Sistem de comandă cu Raspberry PI

Licență
9/10 (1 vot)
Domeniu: Calculatoare
Conține 1 fișier: docx
Pagini : 95 în total
Cuvinte : 23237
Mărime: 4.99MB (arhivat)
Cost: 8 puncte
Profesor îndrumător / Prezentat Profesorului: Ionescu Laurentiu
Facultatea de Electronica, Comunicatii si Calculatoare
Universitatea din Pitesti, Pitesti

Cuprins

1. Introducere 6

1.1. Motivația alegerii proiectului 6

1.2. Organizarea proiectului 6

2. Prezentarea proiectului 8

3. Fundamente teoretice 13

3.1. Raspberry Pi 13

3.1.1. Hardware 13

3.1.1.1. GPIO 13

3.1.1.2. Porturile USB, Ethernet și HDMI 14

3.1.1.3. Alimentarea electrică 15

3.1.1.4. Audio și video 15

3.1.1.5. Clock în timp real 16

3.1.1.6. CSI și DSI 16

3.1.1.6.1. Camera Raspberry Pi 16

3.1.1.6.2. Afișajul Raspberry Pi 17

3.1.2. Software 17

3.1.3. Raspberry Pi în industrie 19

3.1.4. Ramura educațională 19

3.2. Node.js 20

3.2.1. Mediile Node hosting 20

3.2.2. Blocuri Node 20

3.2.2.1. Obiectele global și process 20

3.2.2.2. Buffer, JSON, Vectori 23

3.2.2.3. Callback Node și Evenimente asincrone 24

3.2.2.3.1. The event queue (Loop) 24

3.2.2.3.2. Crearea unei funcții asincrone callback 27

3.2.3. Node Package Manager (NPM) 29

3.2.4. Node si Web-ul 33

3.2.4.1. Modulul HTTP: Server și Client 33

3.2.4.2. Web Server Static 36

3.2.5. Networking, Sockets și Securitate 37

3.2.5.1. Server, Stream și Socket 37

3.2.5.2. Socket TCP și Servere 38

3.2.6. Node în noile medii de dezvoltare 40

3.2.6.1. Samsung IoT și GPIO 41

3.2.6.2. Node pentru Microcontrolere și Microcalculatoare 41

4. Proiectarea aplicației 43

4.1. Proiectare inițială 43

4.1.1. Sistemul de operare Raspberry Pi 43

4.1.1.1. Scrierea sistemului de operare pe cardul de memorie 44

4.1.2. Aplicația aprindere led 45

4.1.3. Aplicație aprindere led prin comandă server 47

4.2. Dezvoltare proiect de licență 51

4.2.1.1. Poziția a două puncte alăturate 54

4.2.1.2. Analiza și transmiterea datelor 59

4.2.1.3. Funcții JavaScript 65

5. Etape în proiectare și probleme întâmpinate 67

5.1. Desenarea traseului 67

5.2. Comunicația între clienți 68

5.3. Preluare și prelucrare coordonate 70

5.4. Transmitere JSON 72

5.5. Probleme întâmpinate și modalități de soluționare 75

6. Concluzii și perspective de dezvoltare 76

6.1. Concluzii 76

6.2. Perspective de dezvoltare 76

Bibliografie 77

Anexe 78

Extras din document

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...

Ai nevoie de altceva?