Bygg en handske för virtuell verklighet

VR-handske Titelbild

Om du vill lära dig mer om VR är det här det coolaste projektet du kan hitta. I den här artikeln kommer vi att visa dig hur du bygger en programmerbar Virtual Reality-handske.

Handsken är baserad på en Raspberry Pi Pico, a MCP3008 ADC och fem flexsensorer som du till och med kan bygga själv!

Vad du behöver

Här är en lista över saker som du behöver för det här projektet.

Om du föredrar en videoguide då har vi allt för dig.

Bygg dina flexsensorer

Eftersom de flesta flexsensorer kostar omkring 10$ per styck är det mycket billigare att bygga dem själv.

Den här videon visar hur man gör det, även om vi har gjort några ändringar för att förbättra prestandan.

Ersätt den inre pappersremsan med velostat och aluminiumfolien med koppartejp. Gör också remsorna mycket tunna (ca 1 mm för kopparremsan och 2 mm för velostaten) för att öka sensorns resistivitet. Ökad resistivitet leder till högre upplösning.

Flex-sensor
Flex-sensor

Du kan också löda spänningsdelarkretsen för att ta bort några ledningar från brödbrädan. Löda en röd tråd i ena änden. Den lästa tråden kommer att vara den positiva kontakten. Löd en gul tråd till den andra änden. Efter den gula tråden måste du ansluta ett motstånd på 330 ohm som kommer att anslutas till jord.

VR Glove Flex Sensor
Flex-sensor

I mitt fall är motståndet i slutet av den svarta kabeln och jag har isolerat det med en krympslang.

Den gula kabeln kommer att fungera som datakabel.

Spänningsdelarkretsen

En spänningsdelarkrets används ofta i den inbyggda världen. Den består av två motstånd i serie med en utgångsanslutning emellan.

Den ger ut en bråkdel av ingångsspänningen och den exakta mängden beror på motståndets resistivitet hos de båda motstånden.

Spänningsdelarkrets
Spänningsdelarkrets

Ledningar

Anslut din MCP3008 till din Raspberry Pi Pico enligt den här bilden.

VR Glove Ledningar
VR Glove Ledningar

Vi har en steg för steg-förklaring i vår video.

Anslut flexsensorerna på samma sätt som i figuren. De åtta stiften på vänster sida av MCP3008 är kanalerna 0 till 7 (uppifrån och ned). Anslut datakabeln från flexsensorn för tummen till kanal 0, pekfingret till kanal 1, långfingret till kanal 2, ringfingret till kanal 3 och lillfingret till kanal 4.

Om du vill ändra ordningen eller lägga till ytterligare sensorer måste du ändra programvaran på Pico.

Konfigurera VR Glove-programvaran

Ställ in Pico

I den här konfigurationen omvandlar MCP3008 den analoga signalen från flexsensorn till en digital signal. Pico läser sedan av uppgifterna och skickar dem till en Windows-dator via USB Serial.

För Pico kommer vi att använda Circuit Python eftersom det finns en MCP3008-modul som verkligen underlättar för oss. För att installera Circuit Python på din Pico laddar du ner .uf2 filen från den Officiell webbplats för Pico Circuit Python.

Anslut din Pico via USB medan du håller BOOTSEL knapp. Dra och släpp sedan .uf2 filen på Pico. Pico kommer att återmontera som CIRCUITPY.

Ladda ner och extrahera mcp3xxx Circuit Python-bibliotek som innehåller -mpy- från denna webbplats.

Ladda ner MCP3XXX för Circuit Python
Ladda ner MCP3XXX för Circuit Python

Den innehåller en lib-mapp som du måste kopiera till Pico (som nu är CIRCUITPY-enheten).

Ladda sedan ner skriptet code.py från vår GitHub-arkiv och kopiera den till Pico.

När du nu sätter igång din Pico (utan genom att hålla knappen BOOTSEL intryckt) läser den de fem första kanalerna från MCP3008 och skickar data till USB Serial.

Ställ in Blender

Nästa steg är att installera Blender för ditt operativsystem. Det här exemplet testades för Windows, men det borde fungera på andra operativsystem också, med några mindre ändringar.

Vi behöver Pythonmodulen PySerial för att läsa seriedata från Pico i vårt Pythonskript. Blender levereras med sin egen Python-version. Se till att installera PySerial där.

Kolla in vår video för att lära dig hur du installerar PySerial i Blender på Windows.

Ladda nu ner hand.blend filen från vår GitHub och öppna den i Blender.

Du bör se en 3D-hand till vänster och ett Python-skript till höger. På rad 73 skapas ett "Serial"-objekt. Du måste skicka namnet på din USB-seriella port till konstruktören (som i mitt fall var "COM4").

Slutsats

Vill du se andra projekt som du kan göra med en Raspberry Pi Pico?

Kolla in vår serie Paragon Projects genom att klicka på den här knappen:

Vad ska du göra med din nya Virtual Reality-handske?

Lämna en kommentar