
Serija usmjerivača namijenjeni su zamjeni klasične kombinacije: jednočipni računar + modem + usmjerivač. Sada je moguće pokrenuti svu potrebnu logiku direktno na usmjerivaču. Zahvaljujući moćnom ARM procesoru, 512 MB RAM-a i ~2 GB ugrađene fleš memorije, na usmjerivaču je moguće čak pokrenuti i nodejs server!
Serijski sučelja RS-232/485 također su integrirana u usmjerivač i odmah dostupna u operativnom sustavu s punim root pristupom. Također su dostupna otvorena okruženja za izradu vlastitih programa i C/C++ biblioteke za rad s niskonivovnim hardverskim API-jem.
Značajka dubokog sna omogućava uštedu energije kada se radi na bateriji: usmjerivač se može aktivirati samo kada je veza zaista potrebna.
U ovom članku razmotrit ćemo zanimljive značajke uređaja i pokušati praktično raditi s ulazno-izlaznim sučeljem iz shell skripti.
Tehničke specifikacije
Serija usmjerivača urađeni su na jedinstvenoj hardverskoj platformi i predstavljeni u pet modela, koji se razlikuju po LTE frekvencijskim opsegu, dostupnosti Wi-Fi-ja i geolokacije (GNSS). Uređaji se pozicioniraju kao zamjena kombinaciji jednočipnog računara i usmjerivača. Moćan procesor i velika količina RAM-a omogućavaju pokretanje zahtjevnih korisničkih aplikacija direktno na usmjerivaču.
- Cortex-A8 procesor — taktna frekvencija 1 GHz, 32-bitna arhitektura
- 512 MB RAM-a
- Fleš memorija od 1,5 do 4 GB — za pohranu korisničkih podataka
- Ulazno-izlazni portovi — RS-232/485 sučelja i digitalni ulazno-izlazni portovi dostupni su za korištenje korisničkim programima
Posebno se ističe model , koji radi prema standardu LTE Cat. M1 (). Protokol LTE Cat. M1 posebno je razvijen za M2M rješenja, ima nizak protok podataka (375 kb/s), kao i veliku domet i poboljšanu stabilnost u teškim uvjetima prijenosa unutar zgrada. Usmjerivač ima ugrađeni , koji omogućava uređaju da radi kratko vrijeme nakon potpunog isključivanja napajanja.
Način dubokog sna
Način dubokog sna omogućava da se usmjerivač stavi u stanje u kojem su svi procesi zaustavljeni, a hardverski dijelovi isključeni, radi uštede energije, pri čemu su sve funkcije uređaja isključene i s vanjske strane izgleda potpuno isključen. Potrošnja energije u ovom načinu rada iznosi ne više od 10 mW.

U načinu mirovanja usmjerivač gotovo da ne troši energiju i budi se za 3 sekunde
Kada zatreba probuditi usmjerivač za prijenos podataka, on probudi se za ~3 sekunde. Naravno, trebat će dodatno vrijeme za registraciju modema u mobilnoj mreži, ali to je značajno brže od pokretanja usmjerivača iz početka. Ova opcija je korisna za sustave s autonomnim napajanjem, koji su veći dio vremena u stanju mirovanja i aktiviraju se povremeno, za obavljanje aktivnih radnji, poput signalizacije ili bloka rezerviranja.
Buđenje i uspavljivanje
Upravljanje uspavljivanjem i buđenjem odvija se putem modula .
Postoje 2 načina upravljanja načinom mirovanja:
- Putem digitalnog ulaza — u ovom načinu usmjerivačem upravlja vanjska jedinica, poput mikrokontrolera. Na signal LOW na digitalnom ulazu usmjerivač uspava, a pri primanju HIGH — budi se, ili obrnuto. Također se može postaviti vremenski odgodu aktivacije za zaštitu od slučajnih prebacivanja.
- Putem unutarnjeg tajmera — usmjerivač odbrojava vrijeme i budi se/uspava u određeno vrijeme. Ovo je zgodno za izvršavanje jednokratnih operacija ili preuzimanje podataka u određenom razdoblju.

Sučelje za postavljanje načina dubokog mirovanja
Funkcija 'posljednji uzdah'
Kvar napajanja na udaljenom objektu može biti osobito neugodan, jer nije jasno zašto je komunikacija s objektom nedostupna. Funkcija 'Posljednji uzdah' omogućuje usmjerivaču da radi neko vrijeme nakon potpunog isključenja napajanja i pošalje poruku da je došlo do kvara i rezervno napajanje nije uključeno. Zahvaljujući ugrađenom superkondenzatoru, čiji je resurs znatno veći od onih kod akumulatora, ne zahtijeva održavanje i zamjenu. Ovo je korisno za sustave rezervnog napajanja kod kojih mogu doći do prekida i važno je pratiti trenutak potpune gubitka napona.

Usmjerivač će poslati signal o kvaru napajanja čak i nakon potpunog isključenja napajanja
Da bi se pravilno reagiralo na događaj gubitka napajanja, potrebno je nekako saznati o tome.
Trenutni napon napajanja može se dobiti ili putem shell naredbe status sys:
$ status sys
Firmware Version : 6.1.10 (2019-07-02)
Serial Number : ACZ1100000623519
Profile : Standard
RTC Battery : Ok
Supply Voltage : 12.3 V # ← napajanje
Temperature : 37 C # ← temperatura unutarnjeg kućišta
Time : 2019-08-16 16:21:18
Uptime : 0 dana, 11 sati, 43 minute
Ili pomoću hardverskog Unix I/O kontrola (ioctl) i programa na C/C++ ili nekom drugom jeziku.
U ovoj tablici su prikazane adrese potrebnih hardverskih registara. Trenutni izlaz napajanja vraća se kao cijeli broj, u milivoltima. Korištenje niskonivskog API-ja je poželjnije od shell skripti u ovom slučaju za bržu reakciju. Detaljne informacije o radu s hardverom dostupne su u

Ioctl upit koji daje trenutačno napajanje.
Serijski interfejsi
Usmjerivač ima dva serijska interfejsa: RS-232 i RS-485. Oni omogućuju izravno povezivanje perifernih uređaja s usmjerivačem, bez korištenja dodatnih priključaka. U tom slučaju na usmjerivaču može raditi punopravni Node-RED ili Nodejs server, što omogućuje korištenje jednog uređaja za postavljanje jednostavnog sustava automatizacije, bez dodatnih računala i kontrolera.

Prema zadanim postavkama, oba interfejsa dostupna su za korištenje kao standardni serijski uređaji u Linuxu:
ls -la /dev/ttyS*
crw------- 1 root root 251, 0 Jan 1 1970 /dev/ttyS0 # ← port rs-232
crw------- 1 root root 251, 1 Jan 1 1970 /dev/ttyS1 # ← port rs-485
crw------- 1 root root 251, 5 Jan 1 1970 /dev/ttyS5 # ← nije izveden
Sve standardne biblioteke će podržavati ove uređaje bez dodatnih podešavanja, uključujući modul i drugi.
Korisnički moduli
Funkcionalnost uređaja može se proširiti pomoću korisničkih modula: to je pojednostavljena verzija paketa, samo bez upravitelja paketa. Cijeli popis dostupnih modula nalazi se na web stranici .
Moduli se instaliraju ručno, pomoću preuzimanja paketa putem web sučelja:

Trenutno je dostupno 73 modula. Evo neki zanimljivi među njima:
- — popularni alat za povezivanje različitih industrijskih protokola u cjelovit sustav
- — punokrvni nodejs server. Velika količina RAM-a i moćan procesor omogućuju pokretanje zahtjevnih aplikacija izravno na usmjerivaču!
- — omogućuje rad u konzoli putem preglednika.
- — set alata za razvoj aplikacija za Microsoft Azure IoT Hub.
Budući da je firmware usmjerivača otvoren, programeri mogu pisati vlastite module, uključujući i one s web sučeljem. Referentni materijali dostupni su u i na web stranici tvrtke. Radi lakše izrade paketa dostupno je spremno .
Hardverski resursi putem shell skripti
Za jednostavne zadatke automatizacije pogodno je koristiti shell skripte, iz kojih se može upravljati svjetlosnom indikacijom i dobivati/zadavati stanje digitalnih pinova.
Svjetlosna indikacija korisna je za prikazivanje trenutnog stanja izvršavanja naredbi. Na primjer, indikacija prijenosa podataka — učestalo treptanje, pokušaj povezivanja — rijetko treptanje, mirovanje — kontinuirano svjetlo. Razmotrimo naredbu led. Prima samo jedan argument — tip treptanja LED diode.
# led
led on|off|fast|slow
Evo kako to izgleda u stvarnom životu:
Demonstracija načina rada korisničkog indikatora putem shell naredbi
Za rad s digitalnim pinovima koristi se naredba io.
$ io
Upotreba: io [get ] | [set ]
io set out0 1 # Postaviti digitalni izlaz OUT0 u stanje 1 (LOW)
io get bin0 # Dobi vrijednost digitalnog ulaza BIN0
Važno je zapamtiti da je logika u ovom slučaju invertirana. Stoga je 1=LOW, 0=HIGH. Koristeći naredbu io možemo lako raditi s digitalnim pinovima iz bash skripti i graditi jednostavnu logiku za automatizaciju i upravljanje.
Kao demonstraciju jednostavnosti rada s digitalnim ulazima i indikacijom, napisat ćemo beskorisnu skriptu koja prikazuje status digitalnog ulaza putem LED dioda.
#!/bin/bash
while true
do
[ $(io get bin0) -eq 0 ] && led fast || led on
done
Princip rada skripte je jednostavan: ako je BIN0 u stanju 0, LED dioda treperi učestalo, inače svijetli kontinuirano. Evo kako to izgleda uživo:
Demonstracija rada bash skripte koja prikazuje stanje digitalnog ulaza putem indikatora.
Unatoč primitivitete ove skripte, ona jasno pokazuje kako u jednoj liniji, bez dodatnog softvera, biblioteka i postavki, mogu se dobiti ulazni podaci s digitalnih ulaza i reagirati na njih.
Linkovi
- U ovom članku ne raspravljamo o mrežnim funkcijama usmjerivača, kao što su balansiranje, failover, VPN i drugo, jer su sve te teme već obrađene u našem drugom članku: .
- Primjer korištenja rutera možete pronaći u našem prvom članku: .
- Cijene proizvoda možete pogledati u općem . Naša web stranica na hrvatskom jeziku još nije spremna.
Pozivamo vas na partnerski forum Advantech

Forum Advantech će postati jedinstvena platforma za raspravu o lokalnim i globalnim trendovima u području Interneta stvari. Ovdje ćete moći razmijeniti iskustva u korištenju novih tehnoloških rješenja i proizvoda, pronaći nove klijente i partnere. Imat ćete priliku vidjeti proizvode koje smo opisivali u člancima i još mnogo toga. U našem programu sudjelovat će lideri industrije i predstavnici ključnih partnera – NVidia, Intel i druge tvrtke koje aktivno sudjeluju u razvoju industrijskog Interneta stvari u sljedećim godinama. Bit će nam drago vidjeti na događaju sve stručnjake u području industrijske automatizacije i Interneta stvari. Sudjelovanje na događaju je besplatno! Broj mjesta je ograničen. .
Izvor: habr.com
