Universitatea Tehnica Iasi - Fac. Automatica si Calculatoare
Sisteme cu Microprocesoare

Experiment nr. 3

  • E3.1 Denumire:


  • Embedded Linux Machine - extensii GPIO


  • E3.2 Prezentare generala, scop.


  • Experimentul de laborator isi propune sa exploreze posibilitatile de realizare a extensiilor digitale pentru platforma RPi utilizind ca mediu de dezvoltare limbajul Python conform prezentarii din cadrul cursului de la Massachusettts Institute of Technology, necesar a fi parcurs. Sunt explorate posibilitatile de utilizare a GPIO si modurile de realizare a extensiilor active digitale. La sfarsitul experimentului se vor detine informatii detaliate despre modul de realizare a unor scripturi Pyton pentru porturilor de intrare/iesire si realizarea comutatoarelor de putere cu optotriacuri, tranzistori MOSFET sau relee. Sunt exemplificate notiunile Unix process si Unix boot. Utilizatorii a1 -a20 pot activa GPIO in urma alocarii acestui drept astfel:
    >sudo adduser ai gpio


  • E3.3 Resurse:

  • Platforma Raspberry Pi zero2 W, extensie LED-uri RGB, extensie optotriac, extensie tranzistor MOSFET , modul releu.



    Documentatie:

    1. MIT Python Course
    2. Python reference card
    3. Releu static model MP240D4

  • E3.4 Sursa programe exemplu:

  • Python - exemplu1

    Python - exemplu 2


    Script Python activare LED rosu
    Script Python activare LED albastru
    Script Python activare LED verde
    Secventa video

    Script Python activare motor cu tasta "m"
    Secventa video

    Script Python activare motor cu buton K
    Secventa video


  • E3.5 Mod de desfasurare/urmarire experiment:

  • Platformele de dezvoltare Raspberry Pi sunt prevazute cu un conector la care sunt dispuse semnale provenite de la modulul central reprezentat in figura de mai jos:

    Procesoarele de pe sistemele Rpi sunt alimentate cu tensiune de 3,7V , nivelele logice la iesirea portuirilor GPIO sunt urmatoarele:
    Utilizand un bredboard se conecteaza cele 3 LED-uri la Rpi conform schemei:



    Se urmareste buna funcionare a programelor prototip aferente celor 3 LED-uri. LED -urile po fi utilizate pentru comenzi utilizand optocuploare, respectiv pot activa fotoreceptori care permit realizarea unor comuntatoare de putere prin utilizarea sistemelor de tip triac.
    Utilizarea luminii ca element activ elimina asigura o izolare galvanica intre Rpi si partea de putere alimentata la 220/380V. Experimentul de laborator contine o extensie de putere pentru Rpi realizata cu mdulul MP240D4 si este reprezentata in figura urmatoare:



    Conectarea la Rpi urmareste activarea unui motor de CA sau a unei prize de uz general pentru consumatori de 220V. Programul prototip pentru activarea unui motor de CA este denumit motor.py. Realizarea extensiilor Rpi pentru comanda unor consumatori de curent continuu, uzuali pentru automobile, se poate realiza folosind tranzistori MOSFET sau bipolari conform reprezentarii de mai jos:




    Lansarea in executie a programelor prototip se realizeaza astfel:

    >python blue.py
    sau
    >python blue. py &

    In a doua varianta procesul este lansat in background. Penru ca procesele sa devina active dupa secventa de boot se poate edita fisierul /etc/rc.local astfel:


    Utilizand comanda Unix ps pot fi vizualizate procesele astfel:



  • Conectati-va cu PuTTY la platforma Raspberry Pi , editati si analizati executia programelor exemplu;
  • Rezolvati problemele propuse;
  • E3.6 Probleme propuse:


  • 1. Realizati un program care va permite vizualizarea cu osciloscopul a semnalelor generate la GPIO .
    2. Utilizand un optocuplor de tip moc3052 si un triac de tip BT139 realizati o extensie pentru Rpi pentru activarea unui consumator de 220V CA ;


    3. Realizati un script Python care va activa un laser/fotodioda conectat la GPIO;
    4. Realizati un script Python care va permite modificarea intensitatii luminii emise de LED;
    5. Realizati un script Python care va activa un LED de putere alimentat la 12V utilizabil pentrutransmisii de date in retele de tip Li-Fi.


  • E3.7 Experimentul poate fi extins pentru:

  • - Dezvoltare Cyber Physical System ;
    - Realizarea actuatoare pentru Internet of Things ;
    - Dezvoltarea modulelor acive pentru servere APACHE ;
    - Control actuatoare digitale de la distante foarte mari;



  • E3.8 Referinte documentare:


  • © 2024 - Florin Pantilimonescu , Fac. Automatica si Calculatoare