Table of Contents

Theo Chihaia (87583) - Pipetor automat

Autorul poate fi contactat la adresa: theo97chihaia@gmail.com

Introducere

Sistemul propus implementeaza o modalitate automatizata de pipetare. Acesta se compune dintr-un sistem mecanic cu injectomat, un controler pentru sistemul mecanic (PCB + ATMEGA324 + modul bluetooth) si un panou de control, implementat ca aplicatie Android. Aplicatia se conecteaza prin modulul bluetooth la controler pentru a interschimba date de control.

Pipetarea este o tehnica foarte des folosita in laboratoarele medicale. De aceea, proiectul va fi folosit pentru automatizarea mai multor proceduri de tehnica medicala.

Descriere Generala

Sistemul este compus din 3 componente principale: panou de control(aplicatie Android), controler si sistem mecanic. Vom analiza fiecare componenta in parte.

Panou de Control

O aplicatie Android ce afiseaza date despre starea sistemului mecanic si il controleaza printr-o interfata usor de folosit.

Controler

Este format din PCB-ul PM2019, microcontrolerul ATMEGA324 si modulul bluetooth. Rolul acestuia este retinerea starii sistemului mecanic si controlul acestuia. Ulterior, acesta va fi extins pentru a suporta mai multe sisteme mecanice simultan.

Sistem Mecanic

Componenta principala a acestuia este un brat principal actionat de un motor pas cu pas pentru a fi mutat pe verticala. Miscarea pe verticala se va realiza prin rotirea unui surub pe care este atasata o piulita. Piulta se leaga de bratul principal. Tot pe acest brat va fi si un senzor de distanta, care va masura distanta pana la lichid. Scopul acestuia este de a mentine capul de pipetare la acelasi nivel fata de lichid.

A 2-a componenta a sistemului este injectomatul. Acesta se leaga de bratul principal si actioneaza o seringa. Modul de functionare este similar cu cel al bratului principal.

A 3-a componenta este un led care indica daca sistemul este selectat(va fi folosit in viitor, cand se vor adauga mai multe sisteme pe acelasi controler).

Sistemul mecanic va oferi o interfata pentru controler. Aceasta interfata va fi compusa din interfetele celor 2 motoare, a senzorului de distanta si a ledului.

Schema Bloc

Hardware Design

Lista de piese

Schema electrica

Software Design

In fisierul main.c am implementat comunicarea cu modulul bluetooth folosind USART. Implementarea controlului sistemului mecanic se afla in fisierul mechanical_system.h. Exista un protocol de comenzi bluetooth ce controleaza sistemul mecanic (de exemplu SETSPEED 1 200 seteaza viteza motorului 1 la valoarea 200). Bucla principala ruleaza cu o frecventa de 1ms. Intr-un ciclu se updateaza toate componentele(rotirea motoarelor si masurarea distantei). Se updateaza, pe rand, componentele fiecarui sistem mecanic. Masurarea distantei se face tot in aceasta bucla, adaugand overhead. Acest mecanism va fi imbunatatit pe viitor pentru a functiona cu intreruperi.

Rezultate obtinute

Am reusit sa duc la bun sfarsit proiectul, cu toate ca mai am functionalitati pe care as vrea sa le adaug in viitor. De exemplu, in acest moment limitez una din curse printr-un senzor de distanta. Cealalta cursa(cea a injectomatului) nu este limitata. Pentru aceasta, as vrea sa masor distanta doar din cunostintele despre rotatia motorului. Problema este ca aceasta inaltime trebuie salvata in memoria permanenta cand se intrerupe alimentarea. As vrea sa construiesc un circuit cu 2 tranzistoare sau relee si o baterie, care sa salveze starea sistemului cand acesta este scos din priza. Placuta va functiona inca cateva secunde pe baterie, va salva starea, dupa care va intrerupe alimentarea bateriei.

Pentru a controla mai multe sisteme mecanice simultan este necesara o refactorizare a softwarului si adaugarea unui shift register.

Sistemul este foarte precis si pipetorul poate fi folosit in lucrari medicale reale. Este utila o reproiectare si folosirea unor materiale mai ieftine si de calitate pentru folosirea la scara larga. Totusi, pentru un prototip functioneaza foarte bine.

Concluzii

Proiectul m-a ajutat sa inteleg mult mai bine sistemele incorporate si electronica digitala.

Download

Link github: https://github.com/theoo97/AutomaticPipettor

Jurnal

1. Proiectarea sistemului mecanic.

2. Achizitionarea componentelor principale.

3. Construirea unui prototip simplu pentru sistemul mecanic.

4. Controlul motoarelor.

5. Controlul si conectarea modulului bluetooth.

6. Incercarea folosirii unui motor mai puternic, arderea microcontrollerului si schimbarea acestuia.

7. Structurarea codului in ansamblu si gandirea modului de conectare.

8. Refacerea in proportie de 80% a sistemului mecanic.

9. Construirea unitatii de control.

10. Legarea unitatii de control la sistemul mecanic.

Bibliografie/Resurse

https://www.instructables.com/id/BYJ48-Stepper-Motor/

https://randomnerdtutorials.com/complete-guide-for-ultrasonic-sensor-hc-sr04/

Download versiune PDF