Nezavisna platforma tj. nezavisni ekosistem
Uvod
Većina proizvođača
developerskih kitova prevashodno namenjena za hobiste (ali isto tako
i za profesionalnu upotrebu) elektronike proizvodi iste stvarajući
svoj ekosistem. Drugo, gotovo svi imaju module za jednu te istu stvar
ali je razlika u tome što se isti razlikuju po konektoru tj. po
načinu na koji se povezuju sa razvojnom pločicom. Konektori i način
na koji su oni organizovani zapravo i definišu ekosistem. Ako malo
bolje pogledate možete zapaziti da u embedded svetu zapravo i nema
standarda koji će jasno definisati kako jedna ploča mora da
izgleda, kakvi su njeni konektori, gde stoji napajanje, gde procesor
itd. Znači nema nikakvog standarda koji to definiše te svi
proizvođači uzimaju sebi za volju da organizuju svoj ekosistem kako
smatraju da je najbolje. Situacija ja potpuno drugačija u PC
industiji gde imate jasno definisan standard kako jedna matična
ploča, recimo ATX formata mora da izgleda, gde je mesto za memoriju,
gde za slotove, razmak između slotova, konektori za napajanje itd. U
PC industiji je sve definisano standardom, u embedded industiji ne,
te možete videti različita rešenja i različite ekosisteme.
Arduino ekosistem
Italijanski startup,
jedan od najboljih, trebalo im je oko deset godina da se probiju na
tržište, prodaja njihovih proizvoda rasla je po eksponencionalnom
zakonu, danas predstavljaju defakto standard što se tiče hobi
elektronike ali takođe i profesionalne upotrebe. Da se razumemo
odmah, Arduino nije standard na pipiru kakav je to već pomenuti ATX
standard za matične ploče PC računara, ali su ga mnogi usvojili da
jeste, i tako je nezvanično i postao standard što potvrđuju
prozivođači embedded developerskih ploča kakvi su Intel i
Freescale. Recimo, Intel je krenuo sa svojom serijom Galileo
developerskih ploča baziranih na Intel® Quark SoC X1000 Application
Processor-u, 32-bitni Intel Pentium-class system on a chip
(specifikacija), pri čemu koriste Arduino konektorsko rešenje kako
bi istu ploču učinili Arduino kompatibilnom. Svi takozvani Arduino
shield-ovi se mogu koristiti uz Intel Galileo embedded developersku
ploču, slika 1.
Slika 1. Intel Galileo |
S druge strane, što se
tiče samog Arduina, defakto, Arduino UNO R3 predstavlja najčešće
razvojno okruženje za bavljenje hobi tj. prototipskom elektronikom,
slika 2. Baziran je na Atmelovom ATmega328P mikorkontroleru i koristi
takođe dodatni mikronkontroler Atmega16U2 na kome trči firmware USB
to Serial jer isti MCU poseduje integrisani USB kontroler. Benefit
ovoga rešenja ogleda se u tome što Atmega16U2 mikrokontroler
takođe možete programrati takozvanim DFU programatorom tj. Device
Firmaware Update software-om koji vam omogućava da zamenite firmware
mikrokontrolera na vrlo jednostavan način
i pretvorite vaš Arduino u nešto drugo, ono što vam je potrebno.
Za programiranje možete koristiti LUFA USB biblioteku. Arduino je sa
ovim, zaista i napravio dobar potez, jer zapravo se možete igrati sa
dva mikrokontrolera na Arduino UNO R3 pločici, jer se pre upotrebe
istog koristilo hardware-sko rešenje FTDI Chip kompanije, takozvano
USB to Serial integrisano kolo za koje vam je isključivo bio
potreban Windows OS Driver.
Slika 2. Arduino UNO R3 |
MikroElektronika
ekosistem
Sa druge strane, naš
domaći proizvođač embedded razvojnih sistema MikroElektronika iz
Beograda, takođe ima svoj ekosistem baziran na određenom setu
konektora. Na bazi istih napravljen je čitav arsenal različitih click
pločica koje služe za razvoj svega što možete zamislit što se
tiče elektronike generalno. Na slici 3. prikazana je razvojna ploča
EasyPIC Fusion v7 na kojoj možete zapaziti dva tipa konektora za
eksterne module tj. click pločice (ovde prevashodno gledamo
konektore za eksterne module): mikroBUS konektor i muški pin
header PORT konektori koji su organizovani kao DIL tj. Dual in Line konektori.
Za obe vrste konektora postoje click pločice. MikroElektronika je u
neku ruku takođe postala defakto standard kao i Arduino, ali moramo
se razumeti da to nije standard na papiru. Kod mnogih MicroChip
razvojnih embedded okruženja možete upravo videti
korišćenje mikroUSB konektora, slika 4 - Microchip Technology
PIC32MM USB Curiosity Development Board (DM320107).
Slika 3. EasyPIC Fusion v7. |
Slika 4. DM320107 - The PIC32MM USB Curiosity Development Board features 2 MikroElektronika mikroBUS expansion interfaces, a USB micro B connector, and two X32 Interfaces that facilitates access to the PIC32 Audio Codec Daughter Card. |
Nezavisna platforma tj.
nezavisni ekosistem
Arduino i
MikroElektronika su prototipske platforme, zato se i zovu
ploče za razvoj, to nisu gotova rešenja koja će se koristiti kao
finalna, već naprotiv, rešenja koja vam služe da razvijate
prototipove i nove elektronske uređaje. Tek kada se prototip razvije i potvrdi testiranjima sledi dizajn uređaja, električna šema, PCB dizajn itd. Većina embedded devlopera i
ljudi koji se bave elektronikom imaju više razvojnih ploča od
različitih proizvođača. Međutim, postavlja se pitanje zašto
kupovati različite module za jednu te istu stvar, od dva različita
proizvođača, (kako bi završili vaš posao) kad umesto toga možete
kupiti jedan modul nezavisan od ostalih ekosistema i primenjivati ga
uz svaku development razvojnu ploču koju imate na raspolaganju?
Zilsel-Invent se upravo odlučio za dizajn i proizvodnju (putem
trećih lica, servisa specijalizovanih za proizvodnju PCB-a pločica na osnovu
vašeg dizajna) nezavisnih modula koji se mogu koristiti uz svaku
developersku ploču koju imate na raspolaganju. Samim tim trošite
manje novaca na kupovinu modula, i iste pri tome možete
iskorišćavati na različitim sistemima. Da bi se razvila jedna
nezavisna platforma morate koristiti protoboard koji je sastavni deo
PCB-a tj. same pločice modula, jer ne možete staviti konektora
kakav vi mislite da treba. Umesto toga koristi se protoboard, koji
vam omogućava da napravite custom konektor, tj. konektor po meri, a
zatim da isti spregnete sa određenom razvojnom pločom. Ukoliko vam
bude bio potreban novi konektor drugačijeg tipa, protoboard će vam
lako omogućiti da napravite isti. Nezavisnom platformom tj.
ekosistemom upravo dobijate da razvijate prototipove uređaja
nezavisno od kontrolne logike, tj. MCU-a, CPU-a, SoC-a, Develpment
ploča itd. Dovoljno je napraviti jedan nezavisni modul i
primenjivati ga gde god vam je isti i potreban, slika 5 - SERPENT II platformsko nezavisni DC motor drajver, obratite pažnju na protoboard.
Slika 5. SERPENT II DC Stepper Motor Driver, nezavisno rešenje sa prototipskim delom. |
Autor: Vladimir Savić
Napomena: tekst će biti
preveden na engleski jezik by Nera Marković
Comments
Post a Comment