Light Plotter with Intel Edison (13 / 16 steg)

Steg 13: Python kod att köra steppers



Varför göra det i Python?

Det är möjligt att skicka Grove I2C Motor Driver V1.3 ett kommando för att köra en stepper för ett visst antal steg utan att behöva ange varje steg individuellt, men detta inte hjälper oss, vi behöver veta exakt när varje steg som händer och när ett antal steg är komplett, så att vi kan vända lampan på och av vid rätt tidpunkt.

Om du vill ha gratis-running stepper funktioner på detta forum och du motor är driver bara laddad med V1.2 som min var, då du kommer att behöva uppgradera firmware som jag gjorde tidigare i detta Instructable.

Också, jag bara Python.

Men Python är inte realtime, du kan inte driva motorer med det!

Det är sant, och det är inte sant. Det är tillräckligt nära realtid för detta ändamål. Om steg tiderna är något inkonsekvent är det verkligen inte en stor sak. Jag emellertid vara noga med för att köra processer i trådar, så att motorerna kan köras samtidigt och andra processer (t.ex. slå LED på och av) hanteras i trådar så att de inte stör kliva tiden och därmed drivkraften i det ledde enheten (som skulle orsaka svängningar).

Klassen Stepper

I Python skapade jag en stepper klass som lagrar några variabler om motorer

  • steg: denna matris innehåller 8 individuella polaritet paren som utgör ett helt varv för en halv-stepping motor
  • nextStep: detta är index för nästa steg i matrisen ska användas
  • riktning: vi lagrar den riktning som kommer att förlänga strängen, detta i grund och botten avgör om vi stega framåt eller bakåt genom matrisen.

klass stepper:
steg = [[2,2], [2,0], [2,1], [0,1], [1,1], [1,0], [1,2], [0,2]]
nextStep = 0
riktning = 1 #1 eller -1 #can inverteras Invertera motor riktning
stepCount = 0

Den stegmotor initiering funktionen ställer in GroveMD drivrutiner. Se till att använda rätt I2C adress som konfigurerats på styrelsens dip-switchar.

Ta del av "setMotorSpeeds", som sätter PWM motor föraren. För steppers PWM bör alltid vara 255 när active eller 0 när oduglig, det påverkar inte hastighet, fördröjningen mellan stegen uppsättningar som.

def __init__ (själv, I2C_ADDR, I2C_BUS, riktning):
self.motorDriver = upmGrovemd.GroveMD (I2C_BUS, I2C_ADDR)
self.motorDriver.setMotorSpeeds(255,255)
Time.Sleep(0.05)
Self.Direction=Direction

Funktionen step() tar i ett argument som är antingen sant eller falskt. Om argumentet är sant då steg motorn i den riktning som kommer att förlänga strängen.

def step(self,lengthen):
"""
Ta ett steg i någon riktning.
Tar en boolesk argument att ange förlänga eller korta av strängen
"""
om (förlänga):
self.stepCount + = 1
self.nextStep += self.direction
annat:
self.stepCount-= 1
self.nextStep-= self.direction

om self.nextStep > 7:
self.nextStep = 0
om self.nextStep < 0:
self.nextStep = 7
self.motorDriver.setMotorDirections (self.steps [self.nextStep] [0], self.steps [self.nextStep] [1]

Se Steg
Relaterade Ämnen

Cloud seismograf med Intel Edison

Vi är en grupp av beslutsfattare som vill tillbringa nätter och helger knorramed tecnology här på Verona FabLab (Verona är en stad i norra Italien) och med detta instructable vill vi beskriva projektet vi har insett för Intel Maker contest.Detta proj...

Geiger ryggsäck med Intel Edison

Vi är en grupp av beslutsfattare som vill tillbringa nätter och helger mixtra med tecnology här på Verona FabLab (Verona är en stad i norra Italien) och med detta instructable vill vi beskriva projektet vi har insett för Intel Maker contest.Vårt proj...

Intel Edison Sensor Dashboard med fribord/Python/kolv (minimal programmering krävs)

Först ville jag säga tack för möjligheten att arbeta med en Edison och ges en vid Intel/Instructables för att ange deras IoT tävling. Jag tror att detta är ett bra sätt att göra samhällsbyggande och uppmuntra utvecklare att få engagerade och ombord....

Göra ett intelligent skrivbordsklockan, skriven i JavaScript, drivs med Intel Edison

Varför min klockor måste vara mer intelligent...Jag ställa alltid in påminnelser för min kalender möten men när denna lilla "XYZ möte börjar i 15 minuter" desktop anmälan dyker upp i hörnet på min datorskärm jag trycker på Snooze eller Stäng kna...

WiFi baserade hemautomation av Intel Edison och banan Pi M1

#IntelIoT #2015HackNTUHej! Människor,Detta är projektet jag gjort ensam under den nationella Taiwan Univ. Hackthon, sedan 21 augusti 2015 till 23 augusti 2015 i Taipei. Jag försökte göra något kunde vara till hjälp för de Taiwaness vars ålder är gamm...

BeatBox: chock spårning för paket med Intel Edison - Intel IOT

Hej allaVi kom precis tillbaka hem efter deltagande till Intel IoT Roadshow (och hackathon) i London.Det var fantastisk och full av idéer och kreativa drar. En mycket bra erfarenhet. Du borde prova.Vi kom som en redan bildade lag och med en mycket br...

Intellekten IoT EDI - övervakning en bekväm och säker miljö (med Intel Edison)

Innan för att starta, jag skulle vilja tacka Intel och Instructables för tillfället: Jag har valts bland annat vinnaren av en fantastisk Intel IoT Edison & Grove Kit... Det var mycket förvånande för mig, och jag är mycket tacksam för det. Tack! :-)In...

Intel® Edison Hands-on dag 1: Tryckknapp

Låt oss göra det enklaste exemplet! Tryck på knappen för att slå på lampan.Komponent som krävs1 × digital piranha LED ljus-modul1 × digital tryckknapp1 × IO Expansion sköld1 × Intel® Edison med Arduino Breakout KitSteg 1: anslutning Digital tryckknap...

Intel® Edison Hands-on dag 3: Tända dimmer

Lätta dimmers är anordningar som används för att variera ljusstyrkan påen ljus. Med en rotation sensor, kan vi finjustera intensiteten i ljuseffekt. Du rotera mer ratten, desto ljusare LED. Så låt oss försöka göra en dimmer av oss själva.Rotationen s...

Intel® Edison Hands-on dag 5: Röst aktiverat lampa

Röst aktiverat lampaHade du någonsin varit nyfiken på den röststyrda glödlampan i din barndom? Hade du någonsin stämplade och om igen och bara slå på ljuset? Så länge du klappa händerna, kommer ljuset att vända på. I detta avsnitt kommer vi göra såda...

Intel® Edison Hands-on dag 6: Sensor lampa

I detta avsnitt kommer vi försöka göra en sensor lampa. Närnågon går förbi sensor lampa, LED kommer att automatiskt på. Naturligtvis blir det om ingen är runt. I detta exempel väljer vi PIR rörelsesensor. Det gör att du kan upptäcka om någon har flyt...

Intel® Edison Hands-on dag 7: Lysande Treasure Box

Självlysande skattkista, namnet låter kul. Och det skulle vara riktigt roligt! Vi kommer att göra denna box, som kommer att vara stängd under dagen, en gång i natt, dess ljus får ljusare med rutan öppnas långsamt. Ha-ha... det inre arbetet i rutan är...

Lösa Sudoku med Intel Edison

Mål• Från en bild av en Sudoku pussel, extrahera och (valfritt) lösa pussel.Målet element• Packa pussel från bilden (omforma bilden).• Identifiera talen i varje cell. – Korrelera nummer till deras respektive cell position.• (valfritt) lösa pussel och...

TEAM INVERKAN! Smart hjälm - Intel Edison, Sparkfun 9DOF

Intellekten Edison med Sparkfun 9DOF LSM9DS0 IMU3: e plats @ Intel IoT Roadshow NYC 2015Detta Instructable är för en Intel Edison IoT Smart hjälm som använder en Sparkfun 9DOF att samla in data från hjälmen för att mäta huvudet tramas och skapa en 3D...

Remote bil övervakning och spårning med Intel Edison

Jag är vanligtvis mångordig, men för denna del ska jag försöka vara kortfattad. Detta projekt är:En Intel Edison + en GPS-mottagare + en Bluetooth OBD-II läsare (tillval eftermarknaden bil sensorer) + en bil.Lägg i några program och du kan övervaka p...

MCU-1: En budget-medvetna Intel Edison MCU baserat Rover leksaksbil. (Intel IoT)

Liten video visar hinder skatteundandragande och få knappen baserat kommandon via bluetooth.Steg 1: SammanfattningDetta projekt kommer att bygga en enkel rover bil som kan styras av en android smart app med röst eller knappen baserat kommandon distan...

Intel Edison IoT remote miljöparametrar monitor

Detta är en mycket grundläggande projekt helt gjord i javascript genom IDE "Intel XDK IoT edition". När du är klar, har du ett system för att övervaka miljöparametrar (temperatur, ljus och luft kvalitet), lokalt i LCD-skärmen och på distans via...

IoT NFT Aquaponic System Controler med WebApp (Intel Edison & Node.js)

KretsloppsodlingAquaponic kombinerar vattenbruk (odla fisk) med Hydroponics (odling i vatten). Fisk utsöndrar bryts ner av bakterier till nitrat som absorberas av växter som näringsämnen, och plantera rötter agera som ett filter till rent vatten för...

Kontrollerande julbelysningen med Intel Edison + Grove Smart Relay

Detta Instructable guidar dig genom processen att använda Intel Edison styrelsen och Grove Smart reläet för att styra Christmas lights (eller andra elektroniska objekt för den delen).I slutet av detta Instructable har du ett eluttag wired att bara ha...