De PA-18 Track Linear Actuator är vår största fastlängd ställdon och används ofta i specialbyggda skåp, hemautomation och robotteknik. Du kan enkelt styra ett ställdon med en Arduino-kort, och den här artikeln visar hur man bygger och programmerar en Arduino-styrd linjär ställdon som enkelt kan anpassas för att passa din applikation!
Nödvändig hårdvara
Följande hårdvara krävs för ett Arduino-styrt linjärt ställdon, som alla kan köpas från Progressive Automations:
- 1x PA-18 spårlinjär ställdon
- 1x Arduino Uno
- 1x MegaMoto Plus H-brygga
- 1x 12 VDC strömförsörjning
- 2x Momentan tryckknappar
- Jumperkablar
Systemkabeldragning
Ställdonet som används i den här uppställningen kräver en ingångsspänning på 12 VDC och upp till 8 A ström vid full belastning. Dessa värden är mycket högre än vad en Arduino-mikrokontroller kan leverera och kommer att orsaka att "magisk" rök kommer ut ur Arduino. För att undvika att skada Arduino används MegaMoto Plus H-bryggan. H-bryggan kan hantera strömförsörjningskraven och kan enkelt användas för att styra ett ställdon med en Arduino.
För detta system finns det anslutningar från Arduino till MegaMoto Plus H-brygga, och till de två tryckknapparna. Varje tryckknapp kräver en enda ingång, som väljs från Arduinos tillgängliga GPIO-pinnar. H-bryggan har fyra anslutningar till Arduino, tre utgångar och en ingång. Pinnen som används av H-bryggan är förinställda och kan inte ändras.
Blockdiagram
Blockschemat nedan förklarar kortfattat strömförsörjningen och anslutningarna. Arduino drivs med 5V och H-bryggan drivs med 12V. Om du använder två separata strömförsörjningar är det viktigt att deras jord delas för att undvika ett scenario med flytande jord.

Arduino-kommandon
Du måste installera Arduino IDE på en stationär eller bärbar dator. Tänk på att din systemkabel påverkar din Arduino-kod. Därför är det viktigt att dubbelkolla dina anslutningar och jämföra dem med koden du har angett.
Kommandot pinMode Arduino används för att definiera pinnarna som ingångar eller utgångar. För att ändra vilken signal Arduino skickar till en specifik pin används kommandona digitalWrite och analogWrite. Dessutom används kommandona digitalRead och analogRead när Arduino behöver kontrollera signalen på en specifik pin.
I programmet nedan används kommandot digitalWrite för att aktivera eller inaktivera H-bryggan och för att konfigurera pinnarna som används för tryckknapparna. Kommandot analogWrite används för att ställa in värdet för PWM-signalen i intervallet 0 till 255 till H-bryggan. Kommandot digitalRead används för att kontrollera om tryckknapparna har tryckts ner eller släppts. Kommandot analogRead används för att mäta strömförbrukningen av ställdonets motor, vilket verifierar när ställdonet är vid slutet av sitt slag.
Arduino-kod
Följande avsnitt går igenom programdefinitioner, inställningar, huvudloop och tryckknappsfunktioner för ett Arduino-styrt linjärt ställdon. Det är viktigt att gå igenom koden en rad i taget för att förstå hur den fungerar. Denna förståelse gör att du kan göra justeringar baserat på din applikation.
Programdefinitioner
Den här delen av koden är konfigurationen av pin-anslutningen. Dubbelkolla att dina anslutningar till Arduino-kortet korrelerar med de angivna numren. Dessa värden kan ändras baserat på om du ansluter ytterligare komponenter till Arduinon som sedan kan kräva att pin-anslutningarna flyttas runt.

Programinställningar
Den här delen av koden konfigurerar de anslutna pinnarna som ingång eller utgång. De två knapparna kan ställas in på HÖG eller LÅG beroende på hur du har anslutit dem (pull-up eller pull-down). Även om Arduino har interna pull-up-motstånd kan du vilja lägga till ett externt motstånd för att avleda studsarna och förhindra falsk avfyrning.

Huvudslingan
Huvudloopen kontrollerar ständigt att knapparna har tryckts ner och kör en viss del av koden beroende på resultatet från tryckknappsfunktionen. En tillståndsmaskinsektion ingår för att avgöra vad det Arduino-styrda linjära ställdonet gör och hur det ska reagera baserat på ingångarna (dvs. tryckknapparna).


Tryckknappsfunktioner
Dessa funktioner läser digitalt tillståndet hos tryckknapparna för att styra ett ställdon med hjälp av en Arduino. Varje tryckknappsfunktion har en avstudsningsslinga i huvud-if-satsen för att förhindra felaktig tändning och att fel signal skickas till Arduinon. Ett booleskt värde är utdata från dessa funktioner. Om till exempel startknappen trycks ner ändras värdet på startButton till sant. Det booleska värdet används sedan i huvudslingan för att fatta ytterligare beslut.

Slutord
Funktionaliteten hos detta system går utöver vad som visas i den här artikeln. Arduino mikrokontroller och MegaMoto Plus H-brygga kan användas för att implementera mycket mer komplicerade styrrutiner. Denna konfiguration kan styra variabel hastighet med hjälp av analogWrite-kommandot för att ställa in PWM-signalen. Ställdonets motorström kan övervakas för att användas för lastavkänning för att utlösa ytterligare kommandon.
Dessutom kan ytterligare sensorer anslutas för ett avancerat Arduino-styrt linjärt ställdon. Till exempel kan en ultraljudssensor anslutas för att starta/stoppa motorn när du är ett visst avstånd bort, eller så kan den användas för att utlösa en mängd andra spännande funktioner. Möjligheterna är oändliga. Men om pinnarna börjar ta slut på Arduino kan du välja en annan Arduino-modell. Alternativt kan flera Arduinoer seriekopplas för att kommunicera med varandra och olika komponenter. Denna väg kommer dock att kräva en hel del programmeringserfarenhet.
För ytterligare information, vänligen skicka ett e-postmeddelande till oss på sales@progressiveautomations.comeller ring oss på 1-800-676-6123.