Taula de continguts:
- Pas 1: pas: 1 Assegureu-vos de la condició de treball dels sensors i dels dispositius
- Pas 2: com funciona?
- Pas 3: programa el teu Arduino amb Arduino IDE
- Pas 4: simulació mitjançant Proteus
- Pas 5: execució del maquinari
Vídeo: Mesura de la velocitat del motor mitjançant Arduino: 6 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:10
És difícil mesurar les rpm del motor ??? No ho crec. Aquí teniu una solució senzilla.
Només un sensor IR i Arduino del vostre equip poden fer-ho.
En aquest post donaré un senzill tutorial que explica com mesurar la RPM de qualsevol motor mitjançant sensor IR i Arduino UNO / nano
Subministraments:
1. Arduion uno (Amazon) / Arduion nano (Amazon)
2. Sensor IR (Amazon)
3. Motor de corrent continu qualsevol (Amazon)
4. LCD 16 * 2 (Amazon)
Eines utilitzades
1. Soldador (Amazon)
2. Filferro (Amazon)
Pas 1: pas: 1 Assegureu-vos de la condició de treball dels sensors i dels dispositius
El sensor IR és un dispositiu electrònic que emet la llum per detectar algun objecte de l’entorn. Un sensor IR pot mesurar la calor d’un objecte i detectar el moviment. Normalment, a l’espectre infrarojos, tots els objectes irradien alguna forma de radiació tèrmica. Aquest tipus de radiacions són invisibles als nostres ulls, però el sensor d’infrarojos pot detectar aquestes radiacions.
Un motor de corrent continu (CC) és un tipus de màquina elèctrica que converteix l’energia elèctrica en energia mecànica. Els motors de corrent continu prenen energia elèctrica a través del corrent continu i converteixen aquesta energia en rotació mecànica.
Els motors de corrent continu utilitzen camps magnètics que es produeixen a partir dels corrents elèctrics generats, cosa que potencia el moviment d’un rotor fixat dins de l’eix de sortida. El parell i la velocitat de sortida depenen tant de l’entrada elèctrica com del disseny del motor.
Què és Arduino?
Arduino és una plataforma electrònica de codi obert basada en maquinari i programari fàcils d’utilitzar. Les plaques Arduino són capaces de llegir les entrades (llum d’un sensor, un dit sobre un botó o un missatge de Twitter) i convertir-lo en una sortida: activant un motor, encenent un LED, publicant alguna cosa en línia. Podeu dir a la vostra placa què fer enviant un conjunt d’instruccions al microcontrolador de la placa. Per fer-ho, utilitzeu el llenguatge de programació Arduino (basat en el cablejat) i el programari Arduino (IDE), basat en el processament.
Descarregueu IDE ARDUINO
Pas 2: com funciona?
Quina és la lògica que hi ha darrere d'això?
Funciona molt similar al codificador. Els codificadors són difícils d’entendre per als principiants. Tot el que heu de saber és que el sensor IR genera pols i estem descobrint l’interval de temps entre cada pols.
En aquest cas, el sensor IR enviarà un pols a Arduino quan el seu feix IR sigui interceptat amb hèlixs de motors. Normalment fem servir hèlixs amb dues pales, però he utilitzat hèlix amb tres pales, tal com es mostra a la figura. depenent del nombre de pales de l'hèlix, hem de modificar alguns valors durant el càlcul de RPM.
considerem que tenim una hèlix que té dues pales. Per a cada motor de revolució, la fulla interceptarà el raig IR dues vegades. Així, el sensor IR produirà polsos sempre que les interceptin.
Ara hem d’escriure un programa que pugui mesurar el nombre d’impulsos produïts pel sensor IR en un interval de temps concret.
Hi ha més d’una manera de resoldre un problema, però hem de triar quina és la millor en aquests codis. He mesurat la durada entre les interrupcions (sensor IR). He utilitzat funcions micros () per mesurar la durada dels impulsos en micro segons.
podeu utilitzar aquesta fórmula per mesurar el RPMRPM = ((1 / durada) * 1000 * 1000 * 60) / fulles
on, durada - interval de temps entre polsos.
60 segons a minuts
1000 - molí a seg
1000 - micro a molí
fulles: no hi ha ales a l'hèlix.
Pantalla LCD: Arduino actualitza els registres de comandes i dades de la pantalla LCD. Que mostra els caràcters ASCII a la pantalla LCD.
Pas 3: programa el teu Arduino amb Arduino IDE
#incloure
LiquidCrystal lcd (9, 8, 7, 6, 5, 4); const int IR_IN = 2; // Sensor IR INPUT sense signar prevmicros llargs; // Emmagatzemar temps sense signar una llarga durada; // Per emmagatzemar diferència de temps sense signar lcdrefresh llarg; // Per emmagatzemar el temps perquè lcd refresqui int rpm; // Valor RPM estat actual booleà; // Estat actual de la previsió booleana d'escaneig d'entrada IR; // Estat del sensor IR a la configuració anterior del buit d’escaneig () {pinMode (IR_IN, INPUT); lcd.begin (16, 2); prevmicros = 0; prevstate = BAIX; } void loop () {//////////////////////////////////////////////// /////////////////////////////////////// RPM Measurement currentstate = digitalRead (IR_IN); // Llegiu l’estat del sensor IR si (prevstate! = Currentstate) // Si hi ha un canvi a l’entrada {if (currentstate == BAIX) // Si l’entrada només canvia d’ALTA a BAIXA {durada = (micros () - prevmicros); // Diferència horària entre revolució en microsegons rpm = ((60000000 / durada) / 3); // rpm = (1 / milis de temps) * 1000 * 1000 * 60; prevmicros = micros (); // emmagatzema el temps per al càlcul de revolucions de nectes}} prevstate = currentstate; // emmagatzema aquestes dades d’escaneig (previ escaneig) per al proper escaneig /////////////////////////////////////// //////////////////////////////////////////////// Display LCD si ((millis () - lcdrefresh)> = 100) {lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Velocitat del motor"); lcd.setCursor (0, 1); lcd.print ("RPM ="); lcd.print (rpm); lcdrefresh = millis (); }}
Pas 4: simulació mitjançant Proteus
Aquest projecte va funcionar perfectament quan vaig intentar simular-ho amb l'ajut de proteus.
En lloc d’utilitzar un sensor d’IR, he utilitzat un generador d’impulsos de corrent continu que simularà el pols d’IR de manera similar a la generada quan els raigs IR colpegen les pales de les hèlixs.
heu de fer canvis al programa en funció del sensor que utilitzeu
El sensor IR amb LM358 ha d'utilitzar aquesta ordre.
if (currentstate == HIGH) // Si l'entrada només canvia de BAIX a ALT
El sensor IR amb LM359 ha d'utilitzar aquesta ordre.
if (currentstate == LOW) // Si l'entrada només canvia de HIGH a LOW
Pas 5: execució del maquinari
Per fer esquemes, utilitzeu les imatges de simulació o consulteu els codis del programa i feu les connexions en conseqüència. Pengeu el codi del programa a Arduino i mesureu la RPM de qualsevol motor. Estigueu atents a la meva pròxima publicació i mireu el meu canal de YouTube.
Recomanat:
Control de velocitat i direcció del motor CC Arduino mitjançant un potenciòmetre, pantalla OLED i botons: 6 passos
Arduino Control de velocitat i direcció del motor CC mitjançant un potenciòmetre, pantalla OLED i botons: en aquest tutorial aprendrem a utilitzar un controlador L298N DC MOTOR CONTROL i un potenciòmetre per controlar la velocitat i direcció d’un motor CC amb dos botons i mostrar el valor del potenciòmetre. a la pantalla OLED. Mireu un vídeo de demostració
Controlar la velocitat i la direcció del motor CC Arduino mitjançant un potenciòmetre i botons: 6 passos
Arduino Control de velocitat i direcció del motor CC mitjançant un botó i un potenciòmetre: en aquest tutorial aprendrem a utilitzar un controlador L298N DC MOTOR CONTROL i un potenciòmetre per controlar la velocitat i direcció d’un motor CC amb dos botons. Veure un vídeo de demostració
Com fer funcionar el motor CC sense escombretes Drone Quadcopter mitjançant el controlador de velocitat del motor sense escombretes HW30A i el Servo Tester: 3 passos
Com fer funcionar el motor CC sense escombretes Drone Quadcopter mitjançant l'ús del controlador de velocitat i servomotor HW30A sense escombretes: Descripció: Aquest dispositiu s'anomena Servo Motor Tester que es pot utilitzar per fer funcionar el servomotor mitjançant un senzill endoll del servomotor i la seva font d'alimentació. El dispositiu també es pot utilitzar com a generador de senyals per al controlador de velocitat elèctric (ESC) i, a continuació, no es pot
Com controlar el motor de corrent continu sense escombretes de drone quadcopter (tipus de 3 cables) mitjançant el controlador de velocitat del motor HW30A i Arduino UNO: 5 passos
Com controlar el motor CC sense escombretes Drone Quadcopter (tipus de 3 cables) mitjançant el controlador de velocitat del motor HW30A i Arduino UNO: Descripció: El controlador de velocitat del motor HW30A es pot utilitzar amb bateries LiPo de 4-10 NiMH / NiCd o 2-3 cèl·lules. El BEC és funcional amb fins a 3 cèl·lules LiPo. Es pot utilitzar per controlar la velocitat del motor de corrent continu sense escombretes (3 cables) amb un màxim de fins a 12Vdc. Específic
Mesura de la velocitat del cabal: 7 passos (amb imatges)
Mesurament de la velocitat de flux: amb aquest dispositiu podeu mesurar la velocitat d’un flux de flux lliure. L'únic que cal són Arduino i algunes habilitats bàsiques d'elaboració i, per descomptat, un flux lliure. No és la forma més pràctica de mesurar la velocitat