Universitatea Tehnica "Gh.Asachi" Iasi - Fac. Automatica si Calculatoare
Sisteme Incorporate

Experiment Nr.10

  • L10.1 Denumire

  • Pico Machine - Implementare Multitasking si control prin Internet/Telefon



  • L10.2 Prezentare generala, scop

  • Experimentul prezina un exemplu de realizare a unei aplicaii multitasking pe sistemul mobil care va permite deplasarea masinii simultan cu receptia comenzilor de strat/stop. Acestea sunt receptionate prin UART prevazut cu modul Bluetooth. Comenzile pot fi emise cu un telefon mobil prevazut cu Terminal sau Voice over BT sau prin intermediul unei pagini web adecvate. Aceasta ruleaza pe un Rpi 2-3-4 prevazut cu modul BT capabila sa se conecteze automat cu modulul BT aflat pe sistemul mobil. La sfarsitul laboratorului se vor detine informatii detaliate despre modul de realizare aplicatiilor compuse din programe multiple ce pot fi executate simultan/pseudosimultan pe cele 2 nuclee ARM Cortex M0+ din structura Rpi Pico.

  • L9.3 Resurse


  • Hardware:
    RPi 2-3-4 prevazut cu modul BT automat conectabil cu cel de pe sistemul mobil;
    Pico Machine ;

    Software:
    Server APACHE, Python3 cu mediu virtual, RShell, Interpreter MicroPyhon pe SBC Pico;


  • L10.4 Programe prototip


  • Program urmarire traseu cu comanda prin telefon ------Secventa video

    Secventa video cu viteza marita

    Program exemplu executie 2 threads/tasks
    Program exemplu utilizare systimer

    Pagina web activa control masina
    Comanda start
    Comanda stop

  • L10.5 Mod de desfasurare laborator

    • Se asambleaza componenele prezentate la resurse conform schemei de mai jos:


    • Se realizeaza programe in MicroPython care vor permite testarea bunei functionari la fiecare modul , in ordine constructiei, respectiv:
      Program control LED-uri semnalizare red, blue, amber;
      Program testare buna conectare si functionare motoare;
      Program testare conectare corecta si buna functionare sensori infrarosu linie
      Program testare conectare corecta si buna functionare modul BT;
      Programe testare utilizare clase _thread si Timer pentru implementare multitasking
      Programe utilizare clasa PWM pentru implentare functii cu viteza variabila;


    • Se examineaza modulele clasei _thread care permit realizarea unor aplicatii mulitask.


    • Se incarca pe sistemul mobil aplicatia de control cu telefonul mobil. Receptia caracterelor se executa cu o functie de tip thread. Se examineza zona de cod pentru lectura sensori si livrare comenzi catre motoare;


    • Se urmareste executia programului si se examineza in cod componentele algoritmului PID , respectiv comanda proportionala, derivativa si integrala.



    • Se ataseaza sensorii pentru control rotatie motoare si se dezvolta task-uri acivabile cu systimer pentru obtinerea unor vecori de antrenament tranmisi la un PC cu BT;
    • Se rezolva problemele propuse.

    • L10.6 Probleme propuse

    • 1. Experimentati comanda sistemului mobil cu BT voice activate;
      2. Experimentati comanda sistemului mobil cu pagina web activa si viteze reglabile;
      3. Realizati un task ce va comunica prin BT/UART 1, in timpul miscarii, informatiile livrate de catre sensorii IR;
      4. Realizati un task ce va comunica prin BT/UART 1, in timpul miscarii, informatii despre comenzile catre cele 2 motoare.;
      5. Realizati o aplicatie care va deplasa sisemul mobil, pe traseul anterior, fara utilizare sensori de pozitie.

    • L9.7 Laboratorul poate fi extins pentru:

      • Realizarea plaformelor educationale pentru ML;
      • Realizarea sistemelor mobile activabile cu telefoanele mobile;
      • Realizarea sistemelor mobile pentru electromobility - Continental;
      • Realizare vehicolelor inteligente pentru NXP Intelligent Car Racing;
      • Realizarea vehicolelor autonome.

    • L10.8 Informatii colaterale



    • © 2022 Fl. Pantilimonescu - Technical University Iasi,Romania