Sistem de comandă cu Raspberry PI

Licență
8.5/10 (2 voturi)
Domeniu: Calculatoare
Conține 1 fișier: docx
Pagini : 95 în total
Cuvinte : 23237
Mărime: 4.99MB (arhivat)
Publicat de: Larisa D.
Puncte necesare: 12
Profesor îndrumător / Prezentat Profesorului: Ionescu Laurentiu
Facultatea de Electronica, Comunicatii si Calculatoare
Universitatea din Pitesti, Pitesti

Cuprins

  1. 1. Introducere 6
  2. 1.1. Motivația alegerii proiectului 6
  3. 1.2. Organizarea proiectului 6
  4. 2. Prezentarea proiectului 8
  5. 3. Fundamente teoretice 13
  6. 3.1. Raspberry Pi 13
  7. 3.1.1. Hardware 13
  8. 3.1.1.1. GPIO 13
  9. 3.1.1.2. Porturile USB, Ethernet și HDMI 14
  10. 3.1.1.3. Alimentarea electrică 15
  11. 3.1.1.4. Audio și video 15
  12. 3.1.1.5. Clock în timp real 16
  13. 3.1.1.6. CSI și DSI 16
  14. 3.1.1.6.1. Camera Raspberry Pi 16
  15. 3.1.1.6.2. Afișajul Raspberry Pi 17
  16. 3.1.2. Software 17
  17. 3.1.3. Raspberry Pi în industrie 19
  18. 3.1.4. Ramura educațională 19
  19. 3.2. Node.js 20
  20. 3.2.1. Mediile Node hosting 20
  21. 3.2.2. Blocuri Node 20
  22. 3.2.2.1. Obiectele global și process 20
  23. 3.2.2.2. Buffer, JSON, Vectori 23
  24. 3.2.2.3. Callback Node și Evenimente asincrone 24
  25. 3.2.2.3.1. The event queue (Loop) 24
  26. 3.2.2.3.2. Crearea unei funcții asincrone callback 27
  27. 3.2.3. Node Package Manager (NPM) 29
  28. 3.2.4. Node si Web-ul 33
  29. 3.2.4.1. Modulul HTTP: Server și Client 33
  30. 3.2.4.2. Web Server Static 36
  31. 3.2.5. Networking, Sockets și Securitate 37
  32. 3.2.5.1. Server, Stream și Socket 37
  33. 3.2.5.2. Socket TCP și Servere 38
  34. 3.2.6. Node în noile medii de dezvoltare 40
  35. 3.2.6.1. Samsung IoT și GPIO 41
  36. 3.2.6.2. Node pentru Microcontrolere și Microcalculatoare 41
  37. 4. Proiectarea aplicației 43
  38. 4.1. Proiectare inițială 43
  39. 4.1.1. Sistemul de operare Raspberry Pi 43
  40. 4.1.1.1. Scrierea sistemului de operare pe cardul de memorie 44
  41. 4.1.2. Aplicația aprindere led 45
  42. 4.1.3. Aplicație aprindere led prin comandă server 47
  43. 4.2. Dezvoltare proiect de licență 51
  44. 4.2.1.1. Poziția a două puncte alăturate 54
  45. 4.2.1.2. Analiza și transmiterea datelor 59
  46. 4.2.1.3. Funcții JavaScript 65
  47. 5. Etape în proiectare și probleme întâmpinate 67
  48. 5.1. Desenarea traseului 67
  49. 5.2. Comunicația între clienți 68
  50. 5.3. Preluare și prelucrare coordonate 70
  51. 5.4. Transmitere JSON 72
  52. 5.5. Probleme întâmpinate și modalități de soluționare 75
  53. 6. Concluzii și perspective de dezvoltare 76
  54. 6.1. Concluzii 76
  55. 6.2. Perspective de dezvoltare 76
  56. Bibliografie 77
  57. Anexe 78

Extras din licență

1. Introducere

Într-o lume din ce în ce mai automatizată mașinăriile joacă un rol foarte important în viața oamenilor. Omenirea a căutat dintotdeauna să își ușureze viața și, începând cu bine-cunoscuta roată care a fost piatra de temelie a inovației, s-a dezvoltat ramura IT cu o ascensiune mult mai mare în comparație cu celelalte ramuri.

Procesul de automatizare oferă o precizie crescută în condiții inițiale, înlocuind majoritatea acțiunilor repetitive. Programul care stă la baza acestor activități este conceput într-o manieră care permite modificarea acestuia și adaptarea la noile cerințe ale clientului.

O activitate digitizată este comanda. Sistemele flexibile bazate pe un PLC sunt folosite în locul legăturilor fizice dintre senzori și alte elemente de execuție. Cum secolul vitezei grăbește orice, este nevoie de un sistem care să răspundă în timp real, comanda executându-se în momentul în care aceasta este creată. Acesta este unul dintre motivele pentru care această ramură a reprezentat un interes pentru mine.

1.1. Motivația alegerii proiectului

Consider că acțiunile făcute în timp real constituie un mare avantaj în procesele tehnologice și sporesc productivitatea în toate domeniile. Comanda motoarelor făcută de către un operator instruit poate da rezultate imediate și de o calitate superioară. Pentru o programare corectă, este nevoie de o interfață ușor accesibilă, intuitivă, astfel încât orice operator să poată lucra cu aceasta, luând decizii corecte în orice situație.

Obiectivul acestui proiect este proiectarea unei unități de comandă a unui motor pas cu pas folosind mini-calculatorul Raspberry PI. Interfațarea se va face prin intermediul unei aplicații web utilizând Node.js și Java Script. Pe lângă acestea se vor adăuga module care vor facilita prelucrarea datelor cum ar fi sockets.io, express, p5 și alte asemenea module.

1.2. Organizarea proiectului

Proiectul va fi organizat în mai multe capitole în care se vor dezvolta etapele în care acesta a fost realizat.

Primul capitol cuprinde introducerea în proiect și este format dintr-o parte introductiva în tema proiectului și două subcapitole:

- Motivația alegerii proiectului - convingeri și argumente

- Organizarea proiectului - scurt rezumat al structurii

Al doilea capitol este denumit Prezentarea proiectului și cuprinde rezumatul lucrării cu informațiile de bază.

Următorul capitol poartă numele de Fundamente teoretice și cuprinde două subcapitole principale care descriu Raspberry Pi și Node.js. În cele două subcapitole se regăsesc informații cu privire la aspectele hardware ale Raspberry Pi-ului: portul GPIO cu descrierea pinilor, porturile USB, Ethernet și HDMI, alimentarea electrică, audio și video, clock în timp real, CSI și DSI. Software-ul și utilizarea Raspberry-ului în mai multe domenii încheie subcapitolul cu o privire de ansamblu.

În cel de-al doilea subcapitol sunt analizate Mediile Node hosting, Blocurile Node, Managerul de pachete Node, Networking, Sockets și securitate și se încheie cu utilizarea Node.js în noile medii de dezvoltare.

Capitolul numărul patru este denumit Proiectarea aplicației în care se detaliază toți pași care s-au urmat pentru realizarea proiectului. Acesta este format din două subcapitole dintre care primul cuprinde acțiunile inițiale pentru obținerea unor cunoștințe care vor servi la proiectare. Cele două aplicații din cadrul acestui subcapitol conțin cunoștințe cu privire la conexiunile dintre componentele fizice ale aplicației finale. Al doilea subcapitol cuprinde toate fazele de execuție.

Urmează capitolul Etape în proiectare și probleme întâmpinate și include un sumar al stadiilor de proiectare structurate în subcapitole precum și rezultate din execuție: Desenarea traseului, Comunicația între clienți, Preluare și prelucrare coordonate, Transmitere JSON, Probleme întâmpinate și modalități de soluționare.

Ultimul capitol se intitulează Concluzii si perspective de dezvoltare și cuprinde potențiale căi de dezvoltare care se pot face pe viitor.

De asemenea proiectul cuprinde Bibliografie în care sunt enumerate sursele de inspirație folosite la realizare.

Lucrarea se încheie cu Anexe, la care se atașează codul aplicației complet.

Bibliografie

[1] Cătălin Nițu (2018), Raspberry Pi 3 Model B+, go4it.ro, Online: http://www.go4it.ro/componente-pc/raspberry-pi-3-model-b-vine-cu-un-procesor-mai-puternic-si-antene-wireless-performante-17063690/ , dată accesare: 21.03.2018

[2] Raspberry Pi (2018), Online: https://en.wikipedia.org/wiki/Raspberry_Pi, dată accesare: 23.03.2018

[3] Raspberry Pi (2018), Online: https://en.wikipedia.org/wiki/Raspberry_Pi#Peripherals , dată accesare: 25.03.2018

[4] Camera Module, Online: https://www.raspberrypi.org/documentation/hardware/camera/README.md , dată accesare: 28.03.2018

[5] Raspberry Pi Display, Online: https://www.raspberrypi.org/documentation/hardware/display/README.md, dată accesare: 28.03.2018

[6] Industrial use of the Raspberry Pi , Online: https://www.raspberrypi.org/documentation/hardware/industrial/README.md, dată accesare: 28.03.2018

[7] Compute Module Datasheet (2016), Version 1.0, pag 20, Online: https://www.raspberrypi.org/documentation/hardware/computemodule/RPI-CM-DATASHEET-V1_0.pdf, dată accesare: 29.03.2018

[8] Node.js and Raspberry Pi, Online: https://www.w3schools.com/nodejs/nodejs_raspberrypi.asp, dată accesare: 2.04.2018

[9] INSTALLING OPERATING SYSTEM IMAGES Online: https://www.raspberrypi.org/documentation/installation/installing-images/README.md, dată accesare: 2.04.2018

[10] W3Schools , www.w3schools.com, dată accesare: 10.04.2018

[11] Node in a nutshell,

Preview document

Sistem de comandă cu Raspberry PI - Pagina 1
Sistem de comandă cu Raspberry PI - Pagina 2
Sistem de comandă cu Raspberry PI - Pagina 3
Sistem de comandă cu Raspberry PI - Pagina 4
Sistem de comandă cu Raspberry PI - Pagina 5
Sistem de comandă cu Raspberry PI - Pagina 6
Sistem de comandă cu Raspberry PI - Pagina 7
Sistem de comandă cu Raspberry PI - Pagina 8
Sistem de comandă cu Raspberry PI - Pagina 9
Sistem de comandă cu Raspberry PI - Pagina 10
Sistem de comandă cu Raspberry PI - Pagina 11
Sistem de comandă cu Raspberry PI - Pagina 12
Sistem de comandă cu Raspberry PI - Pagina 13
Sistem de comandă cu Raspberry PI - Pagina 14
Sistem de comandă cu Raspberry PI - Pagina 15
Sistem de comandă cu Raspberry PI - Pagina 16
Sistem de comandă cu Raspberry PI - Pagina 17
Sistem de comandă cu Raspberry PI - Pagina 18
Sistem de comandă cu Raspberry PI - Pagina 19
Sistem de comandă cu Raspberry PI - Pagina 20
Sistem de comandă cu Raspberry PI - Pagina 21
Sistem de comandă cu Raspberry PI - Pagina 22
Sistem de comandă cu Raspberry PI - Pagina 23
Sistem de comandă cu Raspberry PI - Pagina 24
Sistem de comandă cu Raspberry PI - Pagina 25
Sistem de comandă cu Raspberry PI - Pagina 26
Sistem de comandă cu Raspberry PI - Pagina 27
Sistem de comandă cu Raspberry PI - Pagina 28
Sistem de comandă cu Raspberry PI - Pagina 29
Sistem de comandă cu Raspberry PI - Pagina 30
Sistem de comandă cu Raspberry PI - Pagina 31
Sistem de comandă cu Raspberry PI - Pagina 32
Sistem de comandă cu Raspberry PI - Pagina 33
Sistem de comandă cu Raspberry PI - Pagina 34
Sistem de comandă cu Raspberry PI - Pagina 35
Sistem de comandă cu Raspberry PI - Pagina 36
Sistem de comandă cu Raspberry PI - Pagina 37
Sistem de comandă cu Raspberry PI - Pagina 38
Sistem de comandă cu Raspberry PI - Pagina 39
Sistem de comandă cu Raspberry PI - Pagina 40
Sistem de comandă cu Raspberry PI - Pagina 41
Sistem de comandă cu Raspberry PI - Pagina 42
Sistem de comandă cu Raspberry PI - Pagina 43
Sistem de comandă cu Raspberry PI - Pagina 44
Sistem de comandă cu Raspberry PI - Pagina 45
Sistem de comandă cu Raspberry PI - Pagina 46
Sistem de comandă cu Raspberry PI - Pagina 47
Sistem de comandă cu Raspberry PI - Pagina 48
Sistem de comandă cu Raspberry PI - Pagina 49
Sistem de comandă cu Raspberry PI - Pagina 50
Sistem de comandă cu Raspberry PI - Pagina 51
Sistem de comandă cu Raspberry PI - Pagina 52
Sistem de comandă cu Raspberry PI - Pagina 53
Sistem de comandă cu Raspberry PI - Pagina 54
Sistem de comandă cu Raspberry PI - Pagina 55
Sistem de comandă cu Raspberry PI - Pagina 56
Sistem de comandă cu Raspberry PI - Pagina 57
Sistem de comandă cu Raspberry PI - Pagina 58
Sistem de comandă cu Raspberry PI - Pagina 59
Sistem de comandă cu Raspberry PI - Pagina 60
Sistem de comandă cu Raspberry PI - Pagina 61
Sistem de comandă cu Raspberry PI - Pagina 62
Sistem de comandă cu Raspberry PI - Pagina 63
Sistem de comandă cu Raspberry PI - Pagina 64
Sistem de comandă cu Raspberry PI - Pagina 65
Sistem de comandă cu Raspberry PI - Pagina 66
Sistem de comandă cu Raspberry PI - Pagina 67
Sistem de comandă cu Raspberry PI - Pagina 68
Sistem de comandă cu Raspberry PI - Pagina 69
Sistem de comandă cu Raspberry PI - Pagina 70
Sistem de comandă cu Raspberry PI - Pagina 71
Sistem de comandă cu Raspberry PI - Pagina 72
Sistem de comandă cu Raspberry PI - Pagina 73
Sistem de comandă cu Raspberry PI - Pagina 74
Sistem de comandă cu Raspberry PI - Pagina 75
Sistem de comandă cu Raspberry PI - Pagina 76
Sistem de comandă cu Raspberry PI - Pagina 77
Sistem de comandă cu Raspberry PI - Pagina 78
Sistem de comandă cu Raspberry PI - Pagina 79
Sistem de comandă cu Raspberry PI - Pagina 80
Sistem de comandă cu Raspberry PI - Pagina 81
Sistem de comandă cu Raspberry PI - Pagina 82
Sistem de comandă cu Raspberry PI - Pagina 83
Sistem de comandă cu Raspberry PI - Pagina 84
Sistem de comandă cu Raspberry PI - Pagina 85
Sistem de comandă cu Raspberry PI - Pagina 86
Sistem de comandă cu Raspberry PI - Pagina 87
Sistem de comandă cu Raspberry PI - Pagina 88
Sistem de comandă cu Raspberry PI - Pagina 89
Sistem de comandă cu Raspberry PI - Pagina 90
Sistem de comandă cu Raspberry PI - Pagina 91
Sistem de comandă cu Raspberry PI - Pagina 92
Sistem de comandă cu Raspberry PI - Pagina 93
Sistem de comandă cu Raspberry PI - Pagina 94
Sistem de comandă cu Raspberry PI - Pagina 95

Conținut arhivă zip

  • Sistem de comanda cu Raspberry PI.docx

Alții au mai descărcat și

Implemetarea unei Platforme de E-Learning

DETALII 1. PRECIZARI SI DATE INITIALE: Desi exista numeroase definitii posibile pentru termenul de e-learning, o varianta acceptabila in limba...

Microcontroller-E - Joc de Lumini

Ce este un microcontroller icrocontrolerele constituie în această periodă un domeniu deosebit de dinamic. Ele se impun din ce în ce mai mult în...

Arhitectura calculatoarelor - Intel vs AMD

Rezultatele din testul 3DS Max 7 SPECapc Test Testul alaturat consta in crearea modelelor 3D, modificarea si randarea scripturilor. Conform...

Autentificarea prin semnătură digitală

Introducere O semnatura digitala reprezinta o informatie care il identifica pe expeditorul unui document. Semnatura digitala este creata prin...

Sistem de Prognosticare a Unei Avarii

Acest sistem calculeaza gradul de avariere a unei cladiri în cazul unui cutremur, precum si posibila necesitate a reconstructiei cladirii (partiala...

Platforme laborator arhitectura microprocesoarelor

DEZASAMBLORUL-DEPANATOR ("DEBBUGER") "AFD" 1. Scopul lucrarii Lucrarea de fata îsi propune familiarizarea cu posibilitatile de dezasamblare,...

Te-ar putea interesa și

Agricultură inteligentă - Seră inteligentă

Unele dintre cele mai mari provocări identificate pentru secolul curent includ: - Resurse limitate - Presiunile asupra mediului înconjurător; -...

Ai nevoie de altceva?