Kategorija: Projekti

BPI RT8822CS Bluetooth – WiFi adapter za Banana Pi M5

Kao demo projekat u okviru prikaza, napravili smo malo postolje za displej sa omogućenom Wi-Fi mrežom na Banana Pi M5 uz RTK8822CS BPI WiFi adapter. Podešavanje ekrana je bilo izuzetno glatko i lako, ali podešavanje WiFi modula zahtevalo je neke dodatne korake.
Nakon fizičke instaliacije WiFi modula na poleđini M5, kojeg smo montirali na SunFounder 10.1″ ekran, omogućili smo preklapanje okruženja za „wifi_bt_rtl8822cs“ layout.

OP-Z neočekivani demo projekat

A sada neočekivani demo…
… mi smo inženjerski časopis, pa smo želeli da napravimo mali crossover projekat da završimo ovu recenziju. Uzeli smo jedan od naših omiljenih mikrokontrolera – ATMEL ATSAME51J19 baziran na SAME51 i počeli smo da radimo!
Želeli smo da OP-Z-u dodamo mali OLED ekran i da ga koristimo za prikaz trenutnog otkucaja unutar track-a. Odlučili smo da koristimo MIDI protokol za ovo, jer nam je dao potrebne podatke iz sekvencera.
Koristeći USB-MIDI biblioteku na početku hvatamo signale start, stop i clock. Po standardnoj implementaciji MIDI, OP-Z šalje 24 clock impulsa po četvrtini. To znači da da bismo dobili tačnu sinhronizaciju otkucaja, samo treba da izbrojimo te impulse.

CircuitMess Chatter prikaz – Druga strana WiFi-a (II deo prikaza)

U prvoj polovini ove recenzije (pa, pokušali smo da je napravimo da bude polovina), bili smo fokusirani na prikaz početnog iskustva izgradnje CircuitMess-ovog Chatter kompleta.
U ovoj drugoj polovini, želimo da istražimo malo dublje ispod same haube i da saznamo šta pokreće male Chatter uređaje – i da otkrijemo koliko možemo da izvučemo iz njih.
Ove „uradi sam“ mašine za slanje tekstualnih poruka koje se oslanjaju na LoRa protokolu dolaze opremljene USB-C konektorima za komunikaciju sa računarom i napravljene su da se programiraju pomoću CircuitMess-ovog sopstvenog CircuitBlocks IDE-a. IDE je zasnovan na Blockly jeziku – što znači da je jednostavan za upotrebu i prilično intuitivan za novopridošlice u ovoj oblasti.
Jednom preuzet, CircuitBlocks „grabi“ skup obimnih i dobro napisanih biblioteka koje omogućavaju pristup na visokom nivou svim glavnim hardverskim komponentama Chatter-a – posebno fokusirajući se na tastere, piezo zujalicu i ekran. Kada ovde kažemo na visokom nivou, to zaista mislimo. Tim je uradio sjajan posao sa osnovnom bibliotekom koja se nalazi pod nazivom CircuitOS. Ona objedinjuje iskustvo iz dosadašnjih kit-kompleta kompanije i pruža jednostavne pozive za rukovanje pritisaka na tastere, grafikim sprite-ovima, interaktivnim elementima korisničkog interfejsa, zvukom i multitaskingom. Sve to čini da programiranje Chatter-a što manje izgleda na programiranje MCU-a, a više kao pravo desktop iskustvo slično onome koje su učenici možda već prethodno imali.
Važno je napomenuti da su ovo Arduino biblioteke (više o tome kasnije) – i da CircuitBlocks nudi i programiranje zasnovano na blokovima, ali i editor koda. U blok režimu, editor koda se nalazi u režimu koji omogućava samo čitanje i prikazuje kodom interpretirane blokove u realnom vremenu – fino rešenje! Igrajući se sa ugrađenim demoima, počeli smo da cenimo kolike dubine ovi kompleti mogu da ponude. Bilo je neverovatno videti koliko je sjajnog „sintaksičkog šećera“ prisutno – a posebno tu mislimo na implementaciju multitaskinga. Svesni smo da to iznova pominjemo – ali način na koji je to ovde urađeno mnogo liči na pristup hendlera događaja u Javi ili C# – što je jednostavno fenomenalno!
Koristeći Blockly interfejs sastavili smo nekoliko malih demonstracija, pre nego što smo napravili još neke u prikazu editora koda. Sve ovo nam je pomoglo da saznamo što više o softverskoj arhitekturi koja stoji iza njih.

STM32 Nucleo-64 razvojni sistem sa STM32F401RE MCU – Arduino i ST morpho

U osnovi ovog razvojnog sistema kompanije ST, u seriji Nucleo-64 nalazi se ARM®32-bit Cortex®-M4 CPU sa FPU. U njemu je i Adaptive real-time accelerator (ART Accelerator™) koji omogućava trenutno izvršavanje koda iz 512 kb Flash memorije. CPU radi na 84 MHz i implementirane su DSP instrukcije.

Na ploči je postavljen ARDUINO® Uno V3 konektor i ST morphio hederi koji omogućavaju povezanje velikog broja dodatnih funkcionalnih pločica i šildova.

Za programiranje nije potreban dodatni prob, jer se na sistemu nalazi integrisani ST-LINK debugger/programmer.

ST je za programiranje razvio moćan, na Energiji baziran IDE, pod imenom STM32Cube IDE, veoma sličan onome što smo videli kod TI i njihovog Code Composer Studio-a.

Da bi bi stekli prvi utisak ovom razvojnom sistemu, koristili smo Arduino razvojni sistem, sa tim da je u polju preferances/“Additional Boards Managers URLs“ potrebno upisati:

https://github.com/stm32duino/BoardManagerFiles/raw/main/package_stmicroelectronics_index.json

Tako ćete konfigurisati podršku Arduino IDE-a za rad sa Nucelo 64 pločama. Potrebno je i u Board manageru dodati STM32 MCU based boards by STMicroelectronics za kompletne biblioteke.

projekat colourMixer : MSP430FR5994-EduBoosterPack

Korišćenjem PlatformIO plug-in-a, MS VisualStudioCode postaje veomo sofisticiran IDE za pisanje i razvoj aplikacija na mnogim razvojnim sistemima. Za razliku od Arduina, koji ne podržava TI mikroprocesore i gde je potrebno koristiti Energiju, jedan broj TI ploča je podržan u PlatformIO okruženju. Takav je i slučaj sa kombinacijom MSP430FR5994 i BOOSTXL-EDUMKII.

Iskoristili smo snagu mikrokontrolera sa prva i kolor LCD ekran, višebojnu diodu, tastere i džojstik na drugom i napisali veoma jednostavnu, ali ilustrativnu aplikaciju kojom se mogu menjanem R/G/B parametara na ekranu i na diodi dobiti svetlosti boje u skladu sa zadatim vrednostima svake od osnovnih boja.

Standard pri kodiranju boja za prikaz na ekranu je RGB, pri čemu se svaka od vrednosti ove tri boje kreće u rasponu od 0-255. Na ekranu je normalizovan prikaz na 100% kako bi intuitivnije mogli da posmatramo efekte mešanja.

CircuitBlocks – prvi koraci

Danas je popularno pričati o embedovanom programiranju. Pojam interesantno zvuči, pa je potrebno samo malo ljubopitiljivosti da se u tom pravcu krene. Nema veze da li imate 11 ili 77 godina, što ne bi probali i taj svet.

Baziran na paketima Microsoft’s MakeCode i PXT-Blockly, CircuitBlocks je divan način da otkrijete svet programiranja aplikacija na IoT uređajima. Nema potrebe da išta znate sem da mišom pomerate unapred definisane „blokove“ koji se kao kockice uklapaju jedan u drugi.

Kada otvorite aplikaciju, odmah cete primetiti tri vertikalne celine. Prva levo je meni sa blokovima grupisanim po funkcijama: logički, petlje, matematika, tekst, promenjive, funkcije, I/O, displej i vreme. Svaka grupa je kodirana bojom i u njima se nalaze komande za recimo ispis i pozicioniranje teksta na ekranu, očitavanje pritiska ili otpuštanja tastera,…

U srednjoj koloni nalazi se kreativan prostor. Prostim prevlačenjem blokova iz menija formirate „program“. Lepo, lako i jednostavno… i što je najbitnije očigledno i edukativno.

Jer u trećoj vertikalnoj celini, na slici deo crne boje sa belim tekstom, CircuitBlocks automatiski generiše Arduino kod u C-u. Divan način da svoje vizuelne kreacije polako povezujete sa kodom … što i jeste krajnji cilj cele ove edukativne igre – vaš prvi korak u embedovano programiranje.

Chatter – Napravite i kodirajte svoj sopstveni šifrovani bežični komunikator

Chatter je besplatan, privatan uređaj za slanje tekstualnih poruka kod koga je bezbednost informacija na prvom mestu.

Dolazi u paru, jer slanje poruka sebi nije tako zabavno kao što mislite.

U početku je postojala želja da se napravi voki-toki. Onda je shvaćeno da ovih dana niko ne razgovara telefonom i da svetom vladaju mesindžeri sa emodžijima i GIF-ovima… i memovima, naravno.

Za razliku od vašeg običnog telefona, ovom uređaju nije potrebna mobilna mreža ili SIM kartica da bi radio, jer stvara sopstvenu bežičnu mrežu i komunicira sa drugim Chatter uređajima sa kojima ste ga uparili.

Koristi takozvanu „LoRa“ tehnologiju širokopojasne mreže male snage za slanje tekstualnih poruka, emodžija, memova i GIF-ova.

Chatter koristi javno dostupan skup frekvencija koje su dodeljene za slučajeve korišćenja kao što je ovaj.

Poruke koje šaljete drugim Chatter uređajima su šifrovane i ne prolaze kroz provajdera internet usluga, tako da možete da podelite onoliko tajni koliko želite sa svojim prijateljima (možda je trebalo da programiramo „pinky swear“ dugme).

MCC DAQ HAT:Raspberry PI magnetometar

Digilent je nedavno predstavio MCC DAQ za Raspberri PI za precizno merenje napona, korišćenje termoparova i IEPE (piezoelektrični merači) merenje, plus dodatni analogni i digitalni I/O. Dizajnirani za aplikacije za testiranje i merenje koje su u skladu sa Raspberri Pi HAT standardom, MCC DAQ Hats omogućavaju prikupljanje podataka pri čemu dimenziono ostaju u malom formatu, i na sve to se mogu nadograđivati. Aplikacija za MCC 118 Voltage Measurement DAQ HAT i Raspberri Pi pokazuje kako se očitava linearni izlaz sa senzora magnetnog polja.

Testirajte dizajn elektronskih uređaja prenosnim osciloskopom visoke rezolucije za mešovite signale

Obezbedite sebi osećaj rada koji pruža profesionalni radni sto sa opemom ovim prenosivim instrumentom zahvaljujući njegovoj fleksibilnosti
Inženjeri širom sveta koriste Digilent Test and Measurement uređaje za testiranje i merenje, kako bi skratili vreme dizajniranja i povećali svoj uticaj tako što uvek imaju na dohvat ruke: osciloskop, logički analizator, analizator talasnih oblika i još mnogo toga.
Digilent proširuje liniju za ispitivanja i merenja namenjenu profesionalnom inženjeringu uvodeći ADP3450 i ADP3250 u već postojeću Analog Discoveri Pro liniju uređaja nudeći 4 kanalni (ADP3450) / 2 kanalni (ADP3250) analogni ulaz sa 14-bitnom rezolucijom do 0,5 GS/s. Kako bi pored toga išli i u korak sa sve digitalizovanijim svetom, 16 namenskih digitalnih kanala čine ADP3450 pravim osciloskopom mešovitih signala. Uključivanjem digitalnog napajanja, digitalnih izlaza, dvokanalnog arbitrarnog generatora proizvoljnih talasnih oblika i dva namenska eksterna trigera, Analog Discoveri Pro dolazi uz još 12 instrumenata, spremnih za analizu mešovitih sistemskih signala putem našeg besplatnog softvera, Wave-Forms.

Napravite monitor zagađenja bukom zasnovan na oblaku koristeći Digital Discovery 2

Zagađenje bukom je jedno od glavnih pitanja zaštite životne sredine koje direktno utiče na kvalitet života i zdravlje ljudi. Uz Digilent Pmod MIC3 i Digital Discoveri možete stvoriti monitor zagađenja bukom zasnovan na oblaku za procenu uticaja buke.

PMOD MIC3 je MEMS mikrofon u kome se kao komponente nalaze i poznati mikrofon Acoustics SPA2410LP5H-B i analog-no-digitalni pretvarač Texas Instruments AOCS7476.

Digilent Digital Discovery je kombinovani USB logički analizator, analizator protokola i generator uzoraka.

WaveForms je virtuelni paket instrumenata za Digital Discoveri. Omogućava vam pristup svim instrumentima, uključujući:

32-kanalni digitalni logički analizator(1,2 … 3,3V CMOS, 8 kanala pri 800MS/s*, 16 kanala pri 400MS/s* i 32 kanala pri 200MS/s)
Analizator protokola sa digitalnim analizatorima magistrale (SPI, I2C, UART, CAN, AVR)
16-kanalni generator uzoraka (1,2 … 3,3VCMOS, 100MS/s)

Raspberry Pi Pico & MS Visual Studio Code & MicroPhyton

MS Visual Studio Code je odlično okruženje za rad u Phyton programskom jeziku, pa samim tim i za razvoj aplikacija za sve „MicroPhyton“ sisteme. Za početni rad u Phyton okruženju, po pravilu se preporučuje Thonny IDE (https://thonny.org/), međutim, treba istaći da je za profesionalnu primenu industrijski standard ipak MS Visual Code Studio (MSVSCS), koji pored MicroPhyton-a omogućava i rad u C/C++ jeziku.
Prvi start Raspberry Pi Pico pločice sa Thonny IDE je automatizovan i time je i potpunim početnicima omogućeno pokretanje sistema direktno iz kutije. MSVSC iako robusniji, traži od korisnika podešavanje u par jasnih koraka. Zbog svoje modularnosti i jake podrške zajednice koju ima MSVSC tu je par plug-inova koji postupak instalacije i sam kasniji rad čine izuzetno ugodnim.
MicroPhyton firmever
Raspberry Pi Pico pločica dolazi bez Phyton firmvera na sebi i to važi za gotovo sve MicroPhyton sisteme i pločice, pa fajl treba preuzeti sa sajta https://micropython.org/download/, tako što se izabere željeni sistem među ponuđenim. U trenutku pisanja ovog teksta aktuelna je verzija 1.17 za Raspberry Pi Pico sa nazivom: rp2-pico-20210902-v1.17.uf2. Sve što treba uraditi je da se se preuzet fajl prebaci u root direktorijum Raspberry Pi Pico pločice. Postupak je jednostavan. Treba pritisnuti dugme BOOTSEL na samoj pločici.
Ne puštajući dugme, Raspberry Pi Pico pločicu USB kablom treba povezati sa računarom. Čim dobije napajanje, zbog pritisnutog dugmeta, RPP ulazi u mod u kome se ponaša kao eksterni disk. Sada treba kopirati rp2-pico-*****.uf2 fajl na RPP. Nakon prebacivanja fajla, RPP treba diskonektovati sa računara i ponovo ga nakon toga povezati, ali ovaj put bez pritisnutog BOOTSEL dugmeta. Raspberry Pi Pico je sada spreman za rad u MicroPhyton okruženju.

Projekat DIY EKG

Kako se smanjuje veličina laboratorijskih prostora, a inžinjerski timovi postaju sve više disperzovani, kompanije se zato odlučuju za “sve u jednom” instrumente kao dodatak tradicionalnim laboratorijama, stvarajući stalnu potrebu za prenosnim ispitnim i mernim stolom koji može podržati što veći broj različitih dizajn rešenja.
Inženjeri širom sveta koriste Digilent uređaje za ispitivanje i merenje da bi skratili vreme ciklusa projektovanja i povećali njihovu kreativnost tako što su im osciloskop, logički analizator, generator talasnih oblika i još mnogo toga na dohvat ruke.
NI LabVIEV nudi grafički pristup programiranju koji vam pomaže da vizualizujete svaki aspekt vaše aplikacije, uključujući konfiguraciju hardvera, podatke o merenju i otklanjanje grešaka. Prednosti upotrebe LabVIEV:
Programiranje u skladu sa načinom na koji razmišljate uz pomoć intuitivnog grafičkog okruženja
Povezivanje gotovo bilo kojeg hardvera zahvaljujući neuporedivoj hardverskoj podršci
Brzo prikupljanje i vizualizacija podataka
Interakcija sa drugim softverskim alatima

Ova demonstracija koristi kao osciloskop Digilent Analog Discoveri Studio za merenje prirodnog električnog potencijala koji generiše srce. Kako je izmereni signal vrlo male amplitude, prvo ga treba pojačati spoljnim električnim kolima, koji se mogu graditi na Breadboard Canvas-u i napajati iz napajanja samog Analog Discoveri Studio-a. Uz pomoć WaveForms VI, primljeni podaci se šalju u LabVIEW, gde se vrši naknadna obrada.

Otklanjanje grešaka u aplikaciji upravljanja radom motora

Analog Discoveri 2 je korisna alatka za otklanjanje grešaka u projektima ili prilikom dizajna kod koji se koriste razni tipovi signala, a može se koristiti i uz WaveForms SDK za izradu automatiskih ali i testova specijalne namene. Sledeći primer je prikaz aplikacije ispitivača kontrolera motora koju koristi kupac koji proizvodi elektronske uređaje namenjene širokoj potrošnji. U ovoj konkretnoj aplikaciji više motora je korišćeno u sistemu gde je njihova funkcionalnost direktno uticala na sigurnost krajnjeg korisnika, pa je bilo neophodno opsežno testiranje.
Kao primer urađenog ovde je pokazan način kreiranje C/C++ projekta za Analog Discovery 2 pomoću WaveForms SDK, kao i njegovo korišćenje za otklanjanje grešaka na H-Bridge DC motor kontroleru kao i na kontroleru step motora, oba korišćena u automatskoj ljuljaški za bebe.
Testiraćemo i ispravljati greške u postojećem Aurduino projekatu za kontrolu rada motora. Oprema se sastoji od DC motora sa četkicama i step motora, uz odgovarajuće drajvere, dva potenciometra i leč hal-efekt senzora, što sve zajedno kontroliše Arduino mikrokontroler. Jedan potenciometar podešava brzinu DC motora a drugi zadaje poziciju step motora. Hall-efekt senzor menja smer okretanja motora na svakoj rastućoj/padajućoj ivici. Pojednostavljen dizajn uređaja, šema i Arduino kod se mogu preuzeti sa linka.
Izrada samog projekta kontrole rada motora prevazilazi temu ovog teksta, gde ćemo se baviti isključivo konceptima testiranja koji se mogu koristi i u drugim projektima. Da bi isporobali dati primer, jednostavno povežite vaš Analog Discovery 2 na bilo koju jednostavnu aplikaciju upravljanja rada motora ili uz male modifikacije iskoristite delove koda koje ćemo objasniti u nekoj vašoj aplikaciji.

Automatizacija merenja uz Digilent Analog Discovery Pro 3000

Osciloskopi su alati koje inženjeri rado izaberu kada im je merenje radni zadatak. Ako uređaj u isto vreme može raditi kao generator signala i može matematički obrađivati izmerene signale, ili omogućavati automatsko testiranje, tim bolje. Za mnoge merne zadatke sa kojima se dizajneri susreću u svakodnevnom radu, osciloskopi su izvrstan izbor jer nude mnoštvo načina da se postignu dobri rezultati. Ponekad je neophodno da se dokumentuju dobijeni podaci ili da se izvrši dalja obrada signala. Jedan jednostavan primer: Želite da kvantifikujete snagu određenog bloka u vašem kolu, a takođe vas zanima i talasni oblik koji potiče iz ovih proračuna, a ne samo apsolutne vrednosti.

Kontrola 8x500mA LED kanala sa TLC59213 i MSP430FR2311

Kada je potrebno kontrolisati rad LED kanala većih struja, recimo do 500mA, Ti TLC59213 je odlično rešenje. U pitanju je 8-bitni paralelni I/O strujni drajver sa darlington izlazima koji se mogu lečovati. Rešenje jeste standardno i lako i odlično je za prikaz paralelne komunikacije između mikrokontrolera i integralnog kola- drajvera u ovom slučaju.
U projektu je korišćen Ti MSP430FR2311, ali se uz minimalne modifikacije može koristiti bilo koji mikrokontroler. Sve što je potrebno jeste jedan 8-bitni I/O port (u ovom slučaju je korišćen Port1, pinovi 0 do 7). Port je konfigurisan kao izlazni, sa početnim stanjem pinova 0.
Za upravljanje radom TLC59213 potrebna su još dva signala. CLK i CLR. Ulaz CLK služi za lečovanje izlaznih pinova kola, sa tim da se vrednost stanja na ulaznim pinovima D1…8, na koje dovodimo Port1, lečuje na izlazima Y1..8. „1“ na ulazu Dn, omogućava proticanje struje kroz Yn i time se pali diodni niz na n-tom kanalu. Ovaj signal je u primeru dodeljen Pinu 0 na Portu 2 mikrokontrolera.

Kontrola LED kanala upotrebom TLC5916 i MSP430FR2311

Interesatno rešenje kontrole intenziteta sijanja 8 LED kanala dato je u ovom primeru. Kao osnova korišćeno je TI TLC5916 kolo, 8-kanalni LED sink drajver konstantne struje u rasponu od 3 do 120 mA po kanalu.
Upravljanje rada ovog kola vrši se uz pomoć TI MSP430FR2311 mikrokontrolera, koji je u ovoj aplikaciji bio u obliku TI LaunchPad razvojnog sistema MSP-EXP430FR2311.
Programiranje je urađeno u TI Code Composer Studio V10.0 u C-u, bez upotrebe DriverLiba.
Prilikom pisanja programa pazilo se na modularnost i lakoću korišćenja u budućnosti, pa su posebno napisane funkcije, koje se u glavnom (main.c) programu pozivaju prilikom podešavanja. MSP430FR2311 nakon toga ulazi u sleep mod u kome je potrošnja minimalizovana iz koga se pritiskom na dugme, interaptom na portu 2.0 vrši ponovno setovanje moda rada TLC591