This is an old revision of the document!


Bionic Hand

Autor: Cinjau Constantin Iulian
Grupa: 336CB

Introducere

  • Proiectul pe care mi-am propus sa il implementez reprezinta o mana robotica minimala ce simuleaza doua tipuri de miscari: miscarea simultana a celor 5 degete si rotatia mainii. Ambele tipuri de miscari vor fi realizate cu ajutorul unor motorase electrice, iar acestea vor fi primite ca si comenzi de pe un telefon ce se conecteaza prin bluetooth la placuta arduino.
  • Scopul acestui proiect este de a dezvolta cat mai multe cunostinte legate de cum putem folosi un microcontroller pentru a conecta mai multe componente si a creea ceva ce se poate dovedi util atat pentru noi cat si pentru ceilalti.
  • Ca si utilitate practica, nu pot spune ca are o utilitate anume, e mai mult un fel de “jucarie” pe care o poti controla din telefon si o poti arata prietenilor.
  • Ideea de la care am plecat consta mai mult intr-o curiozitate pe care am avut-o in legatura cu controlul de pe telefon al unui dispozitiv creat de mine folosind un microcontroller, mi se parea destul de interesant ca se pot da comenzi prin bluetooth catre microcontroller ca mai apoi acesta sa controleze niste motorase pentru a misca mana in functie de comanda.

Descriere generală

Descriere generala:

Prin intermediul unei aplicatii de telefon minimaliste(facuta in MIT App Inventor) vom putea trimite comenzi de miscare a mainii: miscarea degetelor sau rotirea acesteia, catre placuta Arduino cu ajutorul modulului de bluetooth cu care microcontroller-ul comunica prin protocolul I2C, urmand ca placuta sa comunice cu LCD-ul(care va afisa comanda data de utilizator pe telefon) prin SPI si sa trimita semnale catre unul dintre cele doua motorase pentru a se realiza miscarea solicitata, de asemenea vor fi implementate anumite verificari astfel incat miscarea degetelor sa fie posibila doar intre niste unghiuri limita(de la 0 grade, in pozitia normala, la maxim 90 de grade) si rotirea mainii sa fie posibila intre 0 grade(pozitia normala) pana la 180 de grade(asa cum este si in realitate), in aceste cazuri limita se vor afisa si niste mesaje specifice pe LCD pentru a anunta user-ul ca limita miscarii respective a fost atinsa si sa incerce sa faca miscarea inversa.

Hardware Design

Lista piese:

  • Arduino UNO(ATMega328p)
  • Modul LCD cu I2C.
  • Modul Bluetooth Master Slave HC-05 cu Adaptor.
  • Fire de legatura.
  • Breadboard.
  • 2 x Servo-Motor Electric MicroServo 9g SG90.
  • 6 x Baterie 1.5V AA + 2 x Suport baterii 3S.
  • Rezistente: 1 x 1k, 1 x 2.2k, 1 x 4.7k.

Prin intermediul laptopului conectat la Arduino Uno(ATMega328p) prin USB vom furniza acesteia tensiunea necesara pentru a functiona. La randul sau, prin intermediul portului de 5V, placuta va alimenta:

  • Modulul de Bluetooth HC-05, care functioneaza cu o tensiune de alimentare cuprinsa intre 3.6V si 6V. Nivelul logic al celor doi pini de date al modulului este de 3.3V, deci pe legatura dintre pinul de TX de placuta(in cazul nostru pinul 8) si pinul RX de pe modul trebuie sa formam un divizor de tensiune din doua reziste(una de 2.2k dupa care vom lua semnalul si il vom duce catre pinul modulului si una de 5.7k = 1 x 4.7k + 1 x 1k care va continua catre GND), deoarece output-ul pinilor de pe placuta este de 5V, ceea ce ar inseamna ca modulul nostru s-ar putea arde. Pe legatura dintre pinul de RX de pe placuta(in cazul nostru pinul 9) si pinul TX de pe modul nu trebuie sa adaugam nimic, deoarece nivelul dat ca OUTPUT de catre modul(3.3V) este suficient pentru ca placuta sa il interpreteze ca HIGH logic.
  • LCD-ul cu controller-ul sau I2C, pentru care vom conecta cei 4 pini ai controller-ului in felul urmator: SCL la pinul Analog 5 depe placuta, SDA la pinul Analog 4, Vcc la pinul de 5V impreuna cu modulul de bluetooth si GND-ul la ground-ul comun.

In ceea ce priveste cele 2 servo-motoare, nu le vom putea conecta tot la pinul de 5V al placutei, deoarece nu ar mai fi destula tensiune de alimentare si pentru ele, ceea ce inseamna ca va trebui sa avem cate o sursa de tensiune suplimentara pentru fiecare in parte. Servo-motorul Micro Servo 9g SG90, poate fi alimentat cu o tensiune cuprinsa intre 3V si 7.2V, asa ca cele 2 surse auxiliare de tensiune pe care le voi folosi sunt formate fiecare in parte din 3 baterii de 1.5V AA legate in serie pentru a avea o tensiune de alimentare per motor de 4.5V. Pentru linia de semnal catre cele 2 motoare am folosit pinii 10 si 11 de pe placuta.

bionic_hand_circuit.jpg

Export to PDF

pm/prj2023/iotelea/bionic_hand.1684658503.txt.gz · Last modified: 2023/05/21 11:41 by constantin.cinjau
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0