Microcontrolerele, mai aproape de … nori

30 NOIEMBRIE 2017

Lucio Di Jasio, manager de dezvoltare afaceri EMEA pentru Microchip Technology, prezintă cele mai recente medii de dezvoltare IDE complete, online

Figura 1: MPLAB X sau MPLAB Xpress?

Figura 2: O punte USB pentru programatorii și depanatorii Microchip standard

În ultimii ani, câteva medii de dezvoltare integrate (IDE) s-au mutat sau au fost create de la început în “cloud”. Dar în timp ce acest lucru era poate natural pentru aplicații de dezvoltare web (utilizând Javas cript, HTML, CSS, PHP …) și mai târziu pentru programarea generală (Java, Python, Ruby …), industria dezvoltării embedded a rămas în urmă. Poate că o cauză o reprezintă faptul că sistemul țintă în aplicațiile embedded este în mod intrinsec mai “fizic”.
Sau poate din cauza promovării publicitare excesive care înconjoară termenul “cloud” atât de mult încât dezvoltatorii au salutat anunțurile despre produsele “cloud” fie cu indiferență aparentă, fie cu scepticism precaut. Aceste reacții vin din două puncte de vedere diferite. Pe de o parte, există generația celor tineri, mereu conectați. Pentru ei a fi online este o parte naturală a lucrurilor. Un serviciu sau unealtă care nu este disponibilă non-stop, oriunde și pe orice platformă de sistem de calcul, reprezintă o anomalie. Cealaltă perspectivă vine din partea unui grup mai pragmatic, poate reprezentând încă majoritatea, care se miră de ce avantaje poate aduce trecerea mediului de dezvoltare în browser. Ei sunt îngrijorați de securitate și performanțe și au nevoie de dovezi și reasigurări înainte de a accepta o asemenea nouă tehnologie. Pentru acest grup, cea mai bună motivație poate veni la ora actuală de la realizarea faptului că IDE-urile moderne au crescut spre a deveni foarte puternice, iar sunt acum foarte mari și complexe. Ele necesită frecvent actualizări și întreținere atentă.
De exemplu MPLAB X – care se bazează pe proiectul IDE open-source Netbeans – acoperă mii de modele de microcontrolere diferite și este actualizat lunar, necesitând o descărcare de aproximativ 400MB. Compilatoarele C care se conectează la el – MPLAB XC compiler suite – au un ciclu mai puțin frecvent, dar necesită încă aproximativ 100MB. Adăugând câteva plugin-uri se poate ajunge rapid dincolo de o jumătate de GB necesară.
Dincolo de acest lucru este și timpul alocat pentru a realiza instalarea și întreținerea generală. Oricine lucrează într-un mic laborator într-un mediu educațional sau asigură suport pentru o echipă de dezvoltatori profesioniști, știe cât de multă muncă este necesară pentru a păstra totul actualizat și în bună stare. În asemenea medii există, de asemenea, o grijă importantă legată de gestionarea permisiunilor necesare pentru instalarea aplicațiilor pe un echipament de calcul partajat. Atunci când se adoptă un lanț de unelte bazat pe cloud, toate lucrează în urma unei simple autentificări online. Instantaneu, versiunea cea mai actuală a fiecărei componente a lanțului – sau una selectată din arhivă – devine disponibilă pentru utilizator într-un browser.
Dar a fi online poate aduce o dimensiune cu totul nouă pentru experiența de dezvoltare embedded. Odată ce un IDE este virtualizat, proiectele se pot muta rapid de pe o stație de lucru pe alta într-un birou sau clasă, sau în orice loc nou. Partajarea și comunicarea între echipe apropiate sau dispersate geografic, devine mai naturală pe lângă ușurință de configurare și întreținere.
Odată cu lansarea recentă a mediului de dezvoltare MPLAB Xpress IDE bazat pe cloud, Microchip a dat un semnal puternic comunității de dezvoltare embedded. În vreme ce poate că nu este primul mediu ce oferă editor și compilator în cloud, noul lanț de unelte bazat pe cloud este poate cel mai complet din punct de vedere al suportului hardware și software. De fapt, el include suport pentru aproximativ 400 de modele de microcontrolere și se estimează să se extindă curând pentru a acoperi întreg portofoliul de produse pe 8, 16 și 32-biți, incluzând potențial mai mult de 1000 de dispozitive unice.
Pentru capabilitatea de depanare oferită, lista include suport pentru simulare online, dar, de asemenea, și acces direct la programatoare și depanatoare în circuit. Cel mai important, lista include o unealtă de dezvoltare rapidă, numită MPLAB Code Configurator (configurator de cod), care permite proiectanților experți și novici să economisească multe ore lungi de studiu a dispozitivului (date tehnice) și/sau documentației bibliotecilor lui periferice (referințe API) și să se concentreze mai mult pe partea creativă a aplicațiilor.

Coborând bariera
Consecința importantă a realizării unui mediu de dezvoltare complet accesibil printr-o simplă autentificare pe web este faptul că ceea ce odinioară a fost o barieră înaltă de intrare, acum a fost coborâtă la podea. Nu există virtual niciun motiv pentru a nu încerca un microcontroler. Chiar și actualul act de autentificare este evitat pentru aceia care aleg să utilizeze sistemul pentru un test anonim rapid și practic! Testarea unei noi funcții, fie un periferic de microcontroler, fie o nouă unealtă software de prototipare rapidă, acestea se află la o distanță de numai câteva click-uri de mouse.
Cu toate acestea, MPLAB Xpress nu este o jucărie sau o unealtă numai pentru începători. Atât interfața cu utilizatorul, cât și uneltele au fost realizate să arate și să se comporte exact ca echivalentul desktop – cele două fiind greu de distins. Aceasta înseamnă că nu va exista o a doua curbă de învățare dacă sau când utilizatorul decide să treacă din cloud pe desktop. De fapt, unealta cloud este egală în capabilități cu alter ego-ul său desktop, iar o tranziție a unui proiect între cele două variante nu este numai posibilă, ci și fără niciun fel de probleme.

Figura 3: MPLAB Code Configurator 3.0 în cloud.

Performanțe
Atunci când ne gândim la un mediu de dezvoltare care necesită o prezență online constantă, mulți se vor îngrijora imediat cu privire la viteză și lățime de bandă, precum și de costul rezultat al conexiunii. Dar cele mai moderne unelte cloud sunt bazate pe tehnologie AJAX. Aceasta înseamnă că ele fac cel mai adesea apel la utilizarea abilității browser-ului de a rula local un program – asincron și utilizează Javascript, de unde vine și partea A și J a acronimului – astfel încât aplicația (AX) poate fi foarte sensibilă și nu necesită ca nicio apăsare de tastă să fie trimisă către un server pe cealaltă parte a planetei. Transfer de fișiere apare, dar numai atunci când un fișier este salvat sau deschis pentru edi­tare. Acestea sunt în mod uzual mici fișiere text (.c, .h, .hex) care sunt depășite cu ușurință în număr și dimensiune de media imaginilor și anunțurilor ce apar la accesarea unui website modern. În schimb, când se compilează programul de aplicație, serverul lucrează în întregime pe copii locale și procesul este surprinzător de rapid. De fapt, în baza experienței, se poate în mod uzual observa cum compilatorul cloud poate depăși regulat un laptop, cu atât mai mult cu cât complexitatea și dimensiunea proiectului crește.

Figura 4: Placa de evaluare MPLAB Xpress.

Securitate
Îngrijorarea cu privire la securitatea aplicațiilor cloud este un subiect delicat.
Marile corporații cheltuiesc mulți bani pe publicitate, pentru a ne convinge pe toți că datele – sau programele în acest caz – sunt perfect sigure odată aflate în cloud. Cel mai bune argumente de până acum din cele două părți opuse sună mai mult sau mai puțin așa:

Cei care se îndoiesc: Dacă este suficientă valoare sau motivație, atacatorii vor găsi o cale să intre. Aceasta este o regulă general valabilă pentru toate
lucrurile, incluzând, de asemenea, și programul oricărei corporații private.
Cei care cred: Companiile care oferă servicii de cloud sunt foarte motivate și în cea mai bună poziție pentru a utiliza resurse foarte specializate – umane și echipament – în a lucra pentru a păstra în siguranță datele. Acestea sunt probabil mult superioare resurselor pe care un departament IT al unei organizații medii și le poate permite.

MPLAB Xpress adoptă tehnologie de criptare avansată – aceeași utilizată de cele mai bune sisteme bancare online – pentru a proteja conexiunile și datele și aplicațiile sensibile ale fiecărui utilizator. În final, în anii ce vor veni, fiecare dintre noi va fi expus la această dilemă tehnologică și va trebui să alegem când riscurile sunt mai mari decât avantajele oferite de o multitudine de noi servicii cloud.

Figura 5: Logo-ul MPLAB Xpress IDE.

Unelte hardware în cloud
MPLAB Simulator a fost inclus în lanțul de unelte online oferind capabilități de bază de depanare, dar majoritatea utilizatorilor vor dori să utilizeze uneltele de prototipare și depanare. Sunt disponibile mai multe căi. De exemplu, Placa de Evaluare MPLAB Xpress (figura 4) oferă cel mai recent microcontroler de uz general, PIC16F18855, care suportă cea mai largă selecție de periferice independente de nucleu disponibilă la ora actuală.
Placa de evaluare se conectează la un PC gazdă, un computer Mac sau Linux ca un dispozitiv de stocare prin USB și permite utilizatorului să utilizeze prin drag and drop un fișier executabil de aplicație (.hex) pentru a programa ținta. Avantajul acestui lucru este că nu necesită niciun driver de instalare. Placa se înregistrează automat în computerul gazdă ca un port serial virtual (USB-CDC), permițând oricărui program de tip terminal să se conecteze direct la UART-ul microcontrolerului țintă PIC. Utilizatorii Windows vor trebui să instaleze un mic fișier (.inf) pentru a permite această funcție pentru prima oară; utilizatorii Linux și Mac primesc în schimb trecere liberă.
O punte USB, lansată ca plugin Java (figura 2), poate fi utilizată pentru conectare la programatoare și depanatoare hardware universale Microchip, precum PICKit3 sau PICDEM Curiosity. Această opțiune deschide poarta către întregul set de plăci de demonstrație Microchip și terțiare, precum și, bineînțeles, orice placă particularizată a utilizatorului.

Sumar
Dezvoltatorii de control embedded, atât cei noi, cât și cei cu experiență, vor găsi că MPLAB Xpress aduce un aer proaspăt. Numărul mare de dispozitive suportate și integrarea cu unelte de dezvoltare rapide precum MPLAB Code Configurator, pune MPLAB Xpress într-o clasă proprie. Va fi interesant de văzut cum noile generații vor utiliza această unealtă și cum se va schimba controlul embedded în era cloud.

Biografie
Lucio Di Jasio este manager de dezvoltare de afaceri EMEA pentru Microchip Technology. El a acoperit de-a lungul a 18 ani diferite roluri tehnice și de marketing în cadrul diviziilor de 8, 16 și 32 biți. Ca autor tehnic prolific și plin de opinii, Lucio a publicat numeroase articole și câteva cărți despre programarea în vederea aplicațiilor de control embedded. Urmându-și pasiunea pentru zbor, el și-a obținut certificările de pilot privat FAA și EASA.

Microchip Technology |  www.microchip.com
Sigla-Microchip

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile necesare sunt marcate *