How to Control Your Actuators from Alternative Networks

Ako ovládať naše aktuátory z alternatívnych sietí

Guest Writer
Guest Writer
PA Engineer

Svet lineárneho pohybu je rýchly a neustále sa vyvíja. Spoločnosť Progressive Automations je odhodlaná zostať na čele týchto technologických zmien. Diaľkovo ovládané aktuátory sa stali rozmanitejšími a dynamickejšími. S týmto na pamäti sa jeden z našich inžinierov, Jake, rozhodol uskutočniť experiment, aby zistil, či je možné naše lineárne aktuátory ovládať z alternatívnych sietí. Je to skutočne možné. Tento článok preto ponúkne návod krok za krokom, ako to dosiahnuť. Zahrňuje aj ukážku kódu a nástroje, ktoré budete potrebovať na nadviazanie úspešného spojenia a napokon online ovládanie aktuátora/aktuátorov.

Na tento experiment sme použili náš PA-14 Mini lineárny aktuátor, keďže je jedným z našich najobľúbenejších aktuátorov!

Kliknite sem

Zoznam produktov

 

PA-14 Mini lineárny aktuátor

     

    Mini lineárny aktuátor od Progressive Automations

     

    LC-201 je 4-kanálová reléová doska – ideálna pre túto aplikáciu!

    Kliknite sem

     

    PA-14 Mini lineárny aktuátor patrí medzi najobľúbenejšie modely od Progressive Automations a je príkladom, ktorý sme použili v tomto experimente. Namiesto aktuátora PA-14 môžete použiť ktorýkoľvek model Progressive Automations s hodnotením 12VDC/24VDC/36VDC/48VDC a kefkovým jednosmerným Motorom. Uvedený kód nižšie nevyžaduje žiadne úpravy ani pri inom aktuátore, pred pokračovaním však treba skontrolovať Prúd a napäťové hodnotenie napájacieho zdroja.

    Nový a vylepšený miniatúrny aktuátor PA-01 (upgrade PA-14) je aktuálny model, ktorý ponúkame s množstvom pridaných výhod. Pre porovnanie si pozrite tabuľky nižšie a upgradujte s istotou!

     

    PA-01

    PA-14

    Možnosti dynamického Zaťaženia

    16, 28, 56, 112, 169, 225 lbs

    35, 50, 75, 110, 150 lbs

    Najvyššie Zaťaženie

    225 lbs

    150 lbs

    Najvyššia Rýchlosť

    3.54 "/sec

    2.00"/sec

    Krytie IP

    IP65

    IP54

    Možnosti Zdvihu

    1" to 40"

    1" to 40"

    Spätná väzba s Hallovým efektom

    Voliteľné

    No

    Lineárny aktuátor pre Raspberry Pi

    Uvedené detaily experimentu vysvetľujú, ako ovládať lineárny aktuátor pomocou Raspberry Pi. Raspberry Pi 4 sa použije na spustenie serverového softvéru a prijímanie príkazov na ovládanie aktuátora. Alternatívne môžete použiť stolný počítač a dosku Arduino. Ak si zvolíte túto cestu, váš počítač musí prijímať príkazy a posielať ich cez sériový port na dosku Arduino.

    Raspberry Pi je jednodeskový počítač približne vo veľkosti kreditnej karty. Tento mikropočítač bol vyvinutý vo Veľkej Británii na výučbu základov informatiky.

     

    Princíp fungovania Raspberry Pi

    Raspberry Pi má všetky vlastnosti skutočného počítača vrátane samostatného procesora, pamäte a grafického ovládača pre výstup HDMI. Dokonca beží na špeciálnej verzii operačného systému Linux. To uľahčuje inštaláciu väčšiny linuxových programov a pripojenie lineárnych aktuátorov k Raspberry Pi. Umožňuje tiež použiť Raspberry Pi na ovládanie aktuátorov, ako plnohodnotný mediálny server alebo ako emulátor videohier.

    Na Pi nie je interné dátové úložisko, možno však použiť smart kartu ako flash pamäť pre celý systém. To umožní rýchlo nahrať rôzne verzie systému alebo aktualizácie softvéru na ladenie. Keďže zariadenie poskytuje nezávislé sieťové pripojenie, dá sa nakonfigurovať aj na prístup cez SSH alebo prenos súborov cez FTP.

     

    Pokyny k experimentu

    Nižšie nájdete presné kroky, ktoré Jake podnikol pri testovaní tohto riešenia – od počiatočného nastavenia až po bezdrôtové diaľkové ovládanie lineárneho aktuátora.

    Keďže doske Raspberry Pi možno priradiť IP adresu a má piny GPIO spolu s vyššie uvedenými funkciami, je to najlepšie zariadenie na takýto experiment.

    Nastavenie Raspberry Pi s lineárnym aktuátorom

    1. Uistite sa, že máte na Pi nainštalovaný OS Raspbian. Kliknite sem pre podrobný návod, ako tento systém nainštalovať.
    2. Pripojte dosku k sieti Wi‑Fi. Kliknite sem pre tieto pokyny.
    3. Priraďte vášmu Raspberry Pi statickú IP adresu. Kliknite sem pre podrobnosti, ako na to.
    4. Vytvorte v Raspberry Pi nový súbor .py a skopírujte doň nasledujúci kód. Po spustení sa váš Pi zmení na server, ktorý bude počúvať vaše príkazy na porte „6166“.

     

     import socket
    	import sys
    
    	# Vytvorte TCP/IP socket
    	sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    
    	# Priraďte socket k portu
    	server_address = ('', 6166)
    	print ('spúšťam na porte ', server_address)
    	sock.bind(server_address)
    
    	# Počúvajte prichádzajúce pripojenia
    	sock.listen(True)
    
    
    	GPIO.setmode(GPIO.BCM)
    	GPIO.setup(18, GPIO.OUT)
    	GPIO.setup(27, GPIO.OUT)
    
    	while (True):
        		# Čakanie na pripojenie
        		print ('čakám na pripojenie')
        		connection, client_address = sock.accept()
    
        		print ('pripojenie od', client_address)
    
        		# Prijmite dáta v malých častiach a odošlite ich späť
            	data = connection.recv(16)
            	 	print ("prijaté:", data)
            	
    		# Výstupný signál na GPIO podľa prijatého príkazu
    		if data == b"ext":
                		GPIO.output(18, GPIO.HIGH)
            	if data == b"ret":
                		GPIO.output(27, GPIO.HIGH)
            	
    		if data == b"close connection":
    			break
    
        	 # Uzatvorenie pripojenia
        	 connection.close() 

    Zapojenie

    Pre jasné pokyny k zapojeniu tohto projektu je k dispozícii diagram na nasledujúcom odkaze: 4-kanálové digitálne relé + zapojenie lineárneho aktuátora s Arduinom.

     

    Nastavenie smerovača

    Keď je vaše Pi pripojené k Wi‑Fi a má statickú IP adresu, ktorú ste nastavili v predchádzajúcom kroku, môžete začať nastavovať presmerovanie portov a IP filtrovanie v smerovači. Presmerovanie portov umožňuje nastaviť smerovač tak, aby odovzdával dáta, ktoré prichádzajú na konkrétny port do konkrétneho zariadenia vo vašej LAN. Predpokladajme, že váš Pi server má statickú IP 192.168.1.69 a počúva príkazy na porte 6166. Smerovač musíte nastaviť tak, aby dáta prichádzajúce na port 6166 odovzdával zariadeniu s IP adresou 192.168.1.69.

    Pokyny:

    Poznámka: Rozhranie vášho smerovača sa môže líšiť od tohto príkladu. V takom prípade si vyhľadajte pokyny pre váš model smerovača.


        1. Zadajte IP adresu smerovača a prihláste sa do jeho rozhrania.

           

          IP adresa
        2. Nájdite nastavenie Port Forwarding (presmerovanie portov).

           

          Nájdite Port Forwarding

     

        1. Zadajte statickú IP adresu vášho Pi servera a rozsah verejných portov. Uistite sa, že port 6166 je v tomto rozsahu.

           

          Rozsah verejných portov

    Z bezpečnostných dôvodov odporúčame v tomto bode nastaviť IP filtrovanie. IP filtrovanie vám umožní určiť IP adresy zariadení, ktorým bude dovolené pristupovať k vášmu Pi cez internet a posielať príkazy. Nájdite nastavenie prichádzajúcich filtrov a zadajte IP adresy zariadení, ktoré môžu pristupovať k aktuátorom.

    Nastavenie klienta

        1. Ak chcete spustiť klientski softvér na svojom zariadení, nainštalujte Python 3.8 z ich oficiálnej stránky.
        2. Možno budete chcieť nainštalovať aj PyCharm, čo je používateľsky prívetivé IDE.
        3. Skopírujte nasledujúci kód:
    import socket
    import sys
    
    # Vytvorte TCP/IP socket
    sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    
    # Pripojte socket k portu, na ktorom server počúva
    server_address = ('Zadajte IP adresu smerovača vo vašej LAN pre Pi', 6166)
    print ('pripájam sa k %s portu', server_address)
    sock.connect(server_address)
    
    try:
    
        # Odoslať dáta
        message = b'ret'
        print ('odosielam "%s"',message)
        sock.sendall(message)
    
        # Čakať na odpoveď
        amount_received = 0
        amount_expected = len(message)
    
        while amount_received < amount_expected:
            data = sock.recv(16)
            amount_received += len(data)
            print ('prijaté: ', data)
    
    finally:
        print ('zatváram socket')
        sock.close()


     

    Všetky aktuátory potrebujú spoľahlivé napájanie – tu sme použili PS-20-12!

    Kliknite sem

    Raspberry Pi verzus Arduino

    Ako bolo uvedené na začiatku článku, namiesto Raspberry Pi je možné použiť aj dosku Arduino. Najprv je dôležité pochopiť, čo sú dosky Arduino. Tieto mikrokontroléry vykonávajú kód interpretovaný firmvérom. Nie sú to plnohodnotné počítače, a teda nemajú operačný systém v pravom zmysle slova. Nemusíte mať k dispozícii nástroje poskytované operačným systémom, uľahčujú však priame spúšťanie jednoduchého kódu.

    S týmto operačným systémom nie sú spojené žiadne náklady. Hlavným účelom dosky Arduino je interakcia so senzormi a zariadeniami, čo robí Arduino skvelým pre hardvérové projekty zamerané na reakciu na rôzne signály zo senzorov aj manuálne vstupy. Je ideálne na ovládanie iných zariadení a aktuátorov, kde plnohodnotný operačný systém jednoducho nie je potrebný.

    Voľba medzi Raspberry Pi a Arduinom závisí najmä od projektu, na ktorý ho potrebujete.

    Arduino je vhodnejšie, ak je hlavným cieľom čítať údaje zo senzorov alebo meniť hodnoty na Motore a iných zariadeniach. Vzhľadom na požiadavky na napájanie Arduina a jednoduchú údržbu tohto systému môže zariadenie bežať bez vypínania takmer bez zásahov do jeho prevádzky.

    Raspberry Pi je naopak praktickejšie pri riešení úloh, ktoré bežne vykonávate na osobnom počítači. Raspberry Pi zjednodušuje správu pracovných postupov v rôznych scenároch – napríklad pri potrebe pripojenia na internet na čítanie alebo zápis dát, prehrávanie médií či pripojenie k externému displeju.

    Keďže Arduino a Raspberry Pi riešia rozdielne úlohy, v niektorých prípadoch je praktické použiť tieto zariadenia spoločne. Po ich prepojení získate cez Pi klientski prístup k nastaveniam a kódu, zatiaľ čo Arduino ovláda aktuátory a zbiera informácie zo senzorov. Tieto dve zariadenia môžete prepojiť cez USB, LAN alebo pripojením I/O portov Arduina k Raspberry Pi.

     

    Záverečné slovo

    V tomto bode máte všetko pripravené na ovládanie akéhokoľvek aktuátora v rámci uvedených kritérií od Progressive Automations cez internet! Spustením kódu získate maximálne pohodlie pri diaľkovom ovládaní vašich aktuátorov – alebo, ako ich radi nazývame, „aktuátory ovládané cez Wi‑Fi“. Ďakujeme za prečítanie – ak máte otázky alebo by ste chceli vidieť, aby niektorý z našich inžinierov niečo otestoval, kontaktujte nás a radi sa vám ozveme!