PA-18 Track -lineaarinen toimilaite on suurin kiinteäpituinen toimilaite valikoimassamme ja sitä käytetään yleisesti mittatilauskalusteissa, kotiautomaatiossa ja robotiikassa. Toimilaitetta on helppo ohjata Arduino-levyllä, ja tässä artikkelissa näytämme, miten rakennat ja ohjelmoit Arduino-ohjatun lineaarisen toimilaitteen, joka on helppo mukauttaa omaan käyttökohteeseesi!
Tarvittava laitteisto
Seuraavat komponentit tarvitaan Arduino-ohjatun lineaarisen toimilaitteen toteutukseen – kaikki saatavilla Progressive Automationsilta:
- 1x PA-18 Track Linear Actuator
- 1x Arduino Uno
- 1x MegaMoto Plus H-bridge
- 1x 12VDC power supply
- 2x hetkitoimiset painonapit
- Hyppylangat
Järjestelmän kytkennät
Tässä kokoonpanossa käytettävä toimilaite tarvitsee 12 VDC tulojännitteet ja jopa 8 A virtaa täyskuormalla. Nämä arvot ovat paljon suurempia kuin mihin Arduino-mikro-ohjain pystyy, ja seurauksena Arduinosta voi tulla ’taikasavua’. Vaurioiden välttämiseksi käytetään MegaMoto Plus -H-siltaa. H-silta täyttää tehovaatimukset ja sen avulla toimilaitetta on helppo ohjata Arduinolla.
Tässä järjestelmässä Arduino kytketään MegaMoto Plus -H-siltaan sekä kahteen painonappiin. Jokainen painonappi vaatii yhden tulon, joka valitaan Arduinon käytettävissä olevista GPIO-nastoista. H-sillalla on neljä kytkentää Arduinoon: kolme lähtöä ja yksi tulo. H-sillan käyttämät nastat ovat esiasetettuja eikä niitä voi muuttaa.
Lohkokaavio
Alla oleva lohkokaavio kuvaa lyhyesti tehovaatimuksia ja liitäntöjä. Arduino toimii 5 V:lla ja H-silta 12 V:lla. Jos käytät kahta erillistä virtalähdettä, on tärkeää, että niiden maat yhdistetään yhteiseen maahan, jotta vältetään kelluvan maan tilanne.

Arduino-komennot
Asenna Arduino IDE pöytäkoneelle tai kannettavalle. Huomaa, että järjestelmän johdotus vaikuttaa Arduino-koodiisi. Siksi on tärkeää tarkistaa kytkennät ja verrata niitä syöttämääsi koodiin.
pinMode-komennolla määritetään nastat tuloiksi tai lähdöiksi. Muuttaaksesi tietyn nastan tilaa käytetään digitalWrite- ja analogWrite-komentoja. Lisäksi digitalRead- ja analogRead-komentoja käytetään, kun Arduino tarkistaa tietyn nastan signaalia.
Alla olevassa ohjelmassa digitalWrite-komennolla otetaan H-silta käyttöön tai pois käytöstä ja määritetään painonapeille käytetyt nastat. analogWrite-komennolla asetetaan H-sillalle annettavan PWM-signaalin arvo välille 0–255. digitalRead-komennolla tarkistetaan, onko painonappeja painettu vai vapautettu. analogRead-komennolla mitataan toimilaitteen moottorin virranotto, jolla varmistetaan, milloin toimilaite on iskunsa päässä.
Arduino-koodi
Seuraavassa käydään läpi Arduino-ohjatun lineaarisen toimilaitteen ohjelman määrittelyt, asetukset, pääsilmukka ja painonappifunktiot. Koodi on hyvä käydä läpi rivi riviltä, jotta sen toiminta selviää. Tämä ymmärrys mahdollistaa muutosten tekemisen oman sovelluksesi tarpeisiin.
Ohjelman määrittelyt
Tässä koodin osassa määritetään nastojen kytkennät. Tarkista, että Arduinon liitäntäsi vastaavat syötettyjä numeroita. Arvoja voidaan muuttaa, jos lisäät Arduinon perään komponentteja, jotka vaativat nastojen uudelleenjärjestelyä.

Ohjelman asetukset
Tässä koodin osassa määritetään liitetyt nastat tuloiksi tai lähdöiksi. Kaksi painiketta voidaan asettaa HIGH- tai LOW-tilaan kytkennästäsi riippuen (pull-up tai pull-down). Vaikka Arduinossa on sisäiset vetovastukset, saatat haluta lisätä ulkoisen vastuksen kytkimen ponnahduksen (debounce) vaimentamiseksi ja virhelaukaisujen estämiseksi.

Pääsilmukka
Pääsilmukka tarkistaa jatkuvasti, onko painikkeita painettu, ja suorittaa tietyn koodin osan painonappifunktion tuloksen perusteella. Mukana on osio tilakoneelle, joka määrittää, mitä Arduino-ohjattu lineaarinen toimilaite tekee ja miten sen tulee reagoida tuloihin (eli painonappeihin) perustuen.


Painonappifunktiot
Nämä funktiot lukevat painonappien tilan digitaalisesti toimilaitteen ohjaamiseksi Arduinolla. Jokaisessa painonappifunktiossa on pää-if-lauseen sisällä ponnahduksen poisto, joka ehkäisee virhelaukaisuja ja väärien signaalien lähettämistä Arduinolle. Näiden funktioiden lähtönä on totuusarvo (boolean). Esimerkiksi, kun startButtonia painetaan, startButton-arvo muuttuu true-tilaan. Tätä totuusarvoa käytetään pääsilmukassa jatkopäätösten tekemiseen.

Lopuksi
Tämän järjestelmän toiminnallisuus ulottuu pidemmälle kuin mitä tässä artikkelissa esitetään. Arduino-mikro-ohjainta ja MegaMoto Plus -H-siltaa voidaan käyttää paljon monimutkaisempien ohjauslogiikoiden toteuttamiseen. Tämä kokoonpano mahdollistaa muuttuvan nopeudensäädön käyttämällä analogWrite-komentoa PWM-signaalin asettamiseen. Toimilaitteen moottorin virranottoa voidaan valvoa kuormituksen tunnistamiseen ja lisäkäskyjen laukaisuun.
Lisäksi edistyneeseen Arduino-ohjattuun lineaariseen toimilaitteeseen voidaan liittää lisäantureita. Esimerkiksi ultraäänisensori voidaan liittää käynnistämään/pysäyttämään moottori, kun olet tietyllä etäisyydellä, tai laukaisemaan joukon muita toimintoja. Mahdollisuuksia on loputtomasti. Jos Arduinon nastat kuitenkin alkavat loppua, voit valita toisen Arduino-mallin. Vaihtoehtoisesti useita Arduinoja voidaan ketjuttaa keskustelemaan keskenään ja eri komponenttien kanssa – tämä vaatii kuitenkin kohtuullisen määrän ohjelmointikokemusta.
Lisätietoja saat lähettämällä meille sähköpostia osoitteeseen sales@progressiveautomations.com tai soittamalla numeroon 1-800-676-6123.