Innehållsförteckning:

Raspberry Pi, Python och en TB6600 stegmotordrivrutin: 9 steg
Raspberry Pi, Python och en TB6600 stegmotordrivrutin: 9 steg

Video: Raspberry Pi, Python och en TB6600 stegmotordrivrutin: 9 steg

Video: Raspberry Pi, Python och en TB6600 stegmotordrivrutin: 9 steg
Video: IoT: IoT Programs using Raspberry PI and Python 2024, September
Anonim
Raspberry Pi, Python och en TB6600 stegmotordrivrutin
Raspberry Pi, Python och en TB6600 stegmotordrivrutin

Denna instruktion följer stegen jag tog för att ansluta en Raspberry Pi 3b till en TB6600 stegmotorstyrenhet, en 24 VDC strömförsörjning och en 6 -trådig stegmotor.

Jag är nog som många av er och råkar ha en "greppväska" med överblivna delar från många gamla projekt.. I min samling hade jag en 6-tråds stegmotor och bestämde mig för att det var dags att lära sig lite mer om hur jag skulle kunna koppla detta till en Raspberry Pi modell 3B.

Som en liten ansvarsfriskrivning uppfann jag inte hjulet här, jag tog bara ihop en massa information som var lätt tillgänglig på webben, lade till min lilla snedställning och försökte få det att fungera

Avsikten här var egentligen bara att dra ihop några saker (till minimal kostnad), skriva lite Python -kod för min Raspberry Pi och få motorn att snurra. Detta är precis vad jag lyckades åstadkomma.

Så låt oss komma igång …

Steg 1: Raspberry Pi

Raspberry Pi
Raspberry Pi

När det gäller Raspberry Pi använde jag tre vanliga GPIO -stift så det här borde fungera (jag har inte testat) med någon Pi eller Orange board, Tinker board eller kloner som finns tillgängliga där ute. Du kan (och borde) kamma igenom min alltför kommenterade Python -kod och välja olika GPIO -stift om du använder en annan processor eller bara vill ändra lite på saker och ting.

Observera att jag ansluter direkt till GPIO -stiften på RPi, så jag begränsar spänningen som GPIO -stiften ser till 3,3 volt.

Steg 2: Stegmotordrivrutin / styrenhet TB6600

Stegmotordrivrutin / styrenhet TB6600
Stegmotordrivrutin / styrenhet TB6600

Som jag tidigare noterade valde jag att använda en TB6600 stegmotordrivrutin / styrenhet.

Den här kontrollenheten är:

  • Lätt tillgänglig (sök eBay, Amazon, Ali Express eller många andra).
  • Mycket konfigurerbar med switchar för enkel åtkomst.
  • Konfiguration och kabeldetaljer är silkescreenade på fodralet.
  • Ingångsspänningsområde 9 VDC till 40 VDC
  • Klarar upp till 4 amp motor drivenhet.
  • Har en intern kylfläkt och hyfsat kylfläns.
  • Är utrustad med 3 avtagbara kontakter.
  • Har ett litet fotavtryck,
  • Lätt att montera.

Men den låga kostnaden för att köpa är verkligen det som förseglade affären på den här.

Steg 3: Stegmotorn …

Stegmotorn …
Stegmotorn …

Stegmotorn jag använde är lite okänd.. Jag har haft den i många år och minns inte historien om hur jag skaffade den eller vad den tidigare användningen var.

I den här instruktionsboken ska jag inte gå in på detaljer om hur jag räknar ut dess möjligheter - jag har inte någon verklig användning för den (annat än experimentell) så jag hoppar över det.

Jag använde en ganska generisk stegmotor. Jag tillbringade lite tid på YouTube och här på Instructables för att försöka dechiffrera trådarna som kommer från det.

Min motor har faktiskt 6 trådar på den … I den här applikationen lämnade jag de två "Center Tap" -trådarna isolerade och oanslutna.

Om du har en liknande "generisk" typ av stegmotor, är jag säker på att med en Ohm -mätare och lite tid kan du också räkna ut kablarna och få det att fungera på detta sätt. Det finns gott om YouTube -videor som hjälper dig att enkelt sortera ut din egen motor.

Steg 4: Strömförsörjning

Ström och nätaggregat
Ström och nätaggregat

Här måste man vara försiktig …

Beroende på din byggnad kan du behöva ansluta till nätspänningar (husström). Var noga med att använda alla lämpliga säkerhetsåtgärder:

  • Försök INTE att göra elektriska anslutningar till strömförsörjningskällor.
  • ANVÄND säkringar och strömbrytare av lämplig storlek
  • ANVÄND en strömbrytare för att driva din nätaggregat (detta gör det enkelt att isolera strömförsörjningen från strömspänningar).
  • AVSLUTA alla kablar ordentligt och gör robusta anslutningar. Använd inte klämmor, slitna ledningar eller dåliga kontakter.
  • ANVÄND INTE elektrikerns tejp som isolator

Jag använde en 24 VDC (5 Amp) strömförsörjning för att driva stegmotordrivrutinen. Jag använde också utgången från samma strömförsörjning för att driva ett DC till DC Buck PSU för att generera 3,3 volt för att använda som källa för ENA-, PUL- och DIR -signalerna (se kopplingsschemat)

Försök INTE att använda RPi för att sänka ström från en 5,0 VDC -källa.

Jag rekommenderar INTE att försöka källa till " +" - sidorna på PUL-, DIR- och ENA -signalerna med 3,3 VDC från RPI.

Steg 5: Kretsskydd …

Observera att i kopplingsschemat som följer nämner jag inte hur man ansluter strömförsörjningen till "AC Power", eller listar en brytare för den. Om du har för avsikt att bygga ett testsystem som liknar detta måste du ta dig tid att ange en effektbrytare och säkring som matchar den eller de strömförsörjningar du kommer att använda. De flesta moderna strömförsörjningar har spännings- och strömspecifikationer listade på dem. Dessa måste följas och lämpliga kretsskydd installeras.

Snälla … Hoppa inte över detta viktiga steg.

Steg 6: Kabeldiagrammet

Kabeldiagrammet
Kabeldiagrammet

Nätaggregat

Utgången från 24 VDC -nätaggregatet är säkrad med en 5 A -säkring och dirigeras sedan till:

  • TB6600 Steppmotordrivrutin / styrenhet "VCC" -stift (RÖD ledning i diagrammet).
  • Den leds också till ingången på 3,3 VDC "DC till DC Converter" (återigen en RÖD kabel i diagrammet).

Utgången på 3,3 VDC "DC till DC -omvandlare" dirigeras till stiften "2", "4" och "6" på TB6600 stegmotordrivrutin / styrenhet (BLÅ kabel i diagrammet).

OBS - styrenheten själv markerar dessa stift som "5V".. Det kommer att fungera om 5V matades till dessa stift, men eftersom spänningsvärdena för GPIO -stiften på RPI valde jag att begränsa spänningen till 3,3 VDC.

OBS - Jag rekommenderar INTE att försöka källa till " +" - sidorna på PUL-, DIR- och ENA -signalerna med 3,3 VDC från RPI.

GPIO -kartläggning

GPIO -kartläggning GPIO 17 PUL ROSA tråd i diagram GPIO27 DIR ORANGE tråd i diagram GPIO22 ENA GRÖN tråd i diagram

Steg 7: Drift

Drift
Drift

I grund och botten styr Raspberry Pi -maskinvaran tre signaler:

GPIO Mapping GPIO 17 PUL GPIO27 DIR GPIO22 ENA

GPIO22 - ENA - Aktiverar eller inaktiverar stegmotorns drivrutin / styrenhet.

När LÅG är regulatorn INAKTIVERAD. Det betyder att om denna linje är HÖG eller INTE är ansluten, så är TB6600 AKTIVERAD, och om rätt signaler appliceras kommer motorn att snurra.

GPIO27 - DIR - Ställer in motorns rotationsriktning.

När HIGH eller inte är ansluten snurrar motorn i en riktning. I det här läget, om motorn inte snurrar i den riktning du vill, kan du byta de två A -motorkablarna med varandra eller de två B -motortrådarna med varandra. Gör detta på de gröna kontakterna på TB6600.

När denna stift går LÅG kommer TB6600 att växla interna transistorer och motorriktningen ändras.

GPIO10 - PUL - Pulser från RPI som berättar för stegmotorns drivrutin / styrenhet TB6600 hur snabbt det ska snurra.

Vänligen se de bifogade bilderna för inställningen av stegmotorns drivrutin / styrenhetens omkopplare som jag använde.

Steg 8: Python -kod

Bifogad är min alltför kommenterade kod.

Använd och redigera detta som du vill. Jag hittade delar av det på webben och lade till det för test- och utvärderingsändamål.

== == ==

Steg 9: Sammanfattning

Det fungerade.. det finns mycket utrymme för förbättringar, och koden kan städas, men OK.

Jag skulle uppskatta att höra dina tankar förslag och om eventuella ändringar / uppdateringar du gör.

Tack.

Rekommenderad: