Taula de continguts:
- Pas 1: parts i components
- Pas 2: el codificador
- Pas 3: sensibilitat
- Pas 4: mesura
- Pas 5: Muntatge
- Pas 6: Codi
- Pas 7: Esquemes
- Pas 8: del PoC a la producció
- Pas 9: Galeria d'imatges
Vídeo: Measurino: una prova de concepte de roda de mesura: 9 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:15
Measurino simplement compta el nombre de rotacions d’una roda i la distància recorreguda és directament proporcional al radi de la pròpia roda. Aquest és el principi bàsic d’un odòmetre i he començat aquest projecte principalment per estudiar com mantenir el circuit (gestionat per un microcontrolador Arduino), compatible amb diverses distàncies, des de mil·límetres fins a quilòmetres, i avaluar possibles problemes o millores.
Pas 1: parts i components
- Arduino Nano rev.3
- Diplay OLED de 128 × 64 (SSD1306)
- Codificador rotatori fotoelèctric incremental (400P / R)
- Roda de goma per a models d'avió (51 mm de diàmetre)
- 2 polsadors
- Bateria de 9v
Pas 2: el codificador
Per a aquest projecte he provat diversos codificadors rotatius barats, però de seguida els he descartat a causa de problemes de precisió / sensibilitat. Així que vaig anar al codificador rotatori fotoelèctric incremental de DFRobot - 400P / R SKU: SEN0230. Es tracta d’un codificador rotatiu fotoelèctric incremental industrial amb material d’alumini, carcassa metàl·lica i eix d’acer inoxidable. Genera un senyal de pols ortogonal AB de dues fases mitjançant la rotació del disc de reixeta i l’optocoplador. 400 polsos / ronda per a cada fase i 1600 polsos / ronda per a sortida de doble fase de 4 vegades. Aquest codificador rotatiu admet una velocitat màxima de 5000 r / min. I es pot utilitzar per mesurar velocitat, angle, velocitat angular i altres dades.
El codificador rotatori fotoelèctric té una sortida de col·lector obert NPN, de manera que heu d’utilitzar resistències de tracció o habilitar el tracte intern de l’Arduino. Utilitza un xip regulador de voltatge 750L05, que té una entrada de potència d’ampli rang DC4.8V-24V.
Pas 3: sensibilitat
Aquest codificador rotatiu optoelèctric té una gran sensibilitat, cosa que el fa perfecte per a aplicacions de control i posicionament de l’eix. Però per al meu propòsit era massa assenyat. Amb una roda de 51 mm, aquest codificador té una sensibilitat de 0,4 mm, cosa que significa que si la mà té tremolors mínims, es gravaran. Així que vaig reduir la sensibilitat afegint una histèresi a la rutina d’interrupcions:
void interrupt ()
{char i; i = digitalRead (B_PHASE); if (i == 1) compta + = 1; else count - = 1; if (abs (recompte)> = histèresi) {flag_A = flag_A + count; recompte = 0; }}
Aquest truc va ser suficient per donar una bona estabilitat a la mesura.
Pas 4: mesura
Seleccioneu la unitat de mesura (decimal o imperial) i, tot seguit, col·loqueu la roda amb el punt de contacte a l’inici de la mesura, premeu el botó Restableix i manteniu-lo girant fins al final. D'esquerra a dreta la mesura augmenta i es resumeix, de dreta a esquerra disminueix i resta. També podeu mesurar objectes corbes (la forma del cotxe, la barana d’una escala de cargol, la longitud del braç des de l’espatlla fins al canell amb el colze doblegat, etc.).
Una rotació completa d’una roda de diàmetre = D mesurarà una longitud de D * π. En el meu cas, amb una roda de 51 mm, això fa 16,02 cm i cada paparra mesura 0,4 mm (vegeu el paràgraf de sensibilitat).
Pas 5: Muntatge
El PoC s'ha creat en una taula de demostració per demostrar els circuits. Tots els components s’han connectat a la placa i el codificador rotatiu està connectat a un bloc de terminals de cargol de 2x2 pols. La bateria és una bateria estàndard de 9v i el consum total d’energia del circuit és d’uns 60mA.
Pas 6: Codi
Per a la pantalla, he utilitzat l'U8g2lib, que és molt flexible i potent per a aquest tipus de pantalles OLED, que permet una àmplia selecció de tipus de lletra i bones funcions de posicionament. No vaig perdre massa temps en omplir la pantalla d’informacions, ja que només era un Poc.
Per llegir el codificador, faig servir interrupcions generades per una de les dues fases: cada vegada que es mou l’eix del codificador, genera una interrupció a Arduino lligada a la pujada de l’impuls.
attachInterrupt (digitalPinToInterrupt (A_PHASE), interrupt, RISING);
La pantalla canvia automàticament de mil·límetres a metres, a quilòmetres i (si es selecciona des del polsador) de polzades a iardes i milles, mentre que el polsador RST restableix la mesura a zero.
Pas 7: Esquemes
Pas 8: del PoC a la producció
Per què és una prova de concepte? A causa de moltes millores que es podrien / haurien de fer abans de construir un equip que funcionés completament. Vegem totes les possibles millores en els detalls:
- Roda. La sensibilitat / precisió de Measurino depèn de la roda. Una roda més petita us pot proporcionar una millor precisió a l’hora de mesurar petites longituds (de l’ordre de mil·límetres a centímetres). Una roda molt més gran amb un boom d’extensió permetrà caminar per la carretera i mesurar quilòmetres. Per a les rodes petites, s’ha de tenir en compte el material: una roda de goma completa es pot deformar lleugerament i afectar la precisió, de manera que en aquest cas suggeriré una roda d’alumini / acer amb només una cinta fina per evitar relliscades. Amb una edició de programari trivial (seleccioneu el diàmetre de roda correcte amb un interruptor), podeu considerar que les rodes intercanviables s’adaptin a qualsevol mesura mitjançant un connector de 4 pins (és a dir: port USB).
- Programari. En afegir un altre polsador, el programari també es podria ocupar de mesurar àrees de rectangles o d’amplitud d’angles. També aconsello afegir un polsador "Mantenir" per congelar la mesura al final, evitant moure la roda sense voler abans de llegir el valor a la pantalla.
- Substituïu la roda per una bobina. Per a mesures curtes (a pocs metres), la roda es podria substituir per una bobina amb ressort amb fil o cinta adhesiva. D’aquesta manera només cal estirar el fil (fent girar l’eix del codificador), prendre la mesura i mirar a la pantalla.
- Afegeix una visualització de l'estat de la bateria. El pin de referència Arduino de 3,3 v (precís dins de l'1%) es pot utilitzar com a base per al convertidor ADC. Per tant, fent una conversió analògica a digital al pin de 3,3 V (connectant-lo a A1) i comparant aquesta lectura amb la lectura del sensor, podem extrapolar una lectura real, independentment del que sigui VIN (sempre que superi els 3,4 V). Un exemple de treball es podria trobar en aquest altre meu projecte.
Pas 9: Galeria d'imatges
Recomanat:
Com fer una petita estació de prova del panell solar: 6 passos
Com fer una petita estació de prova del panell solar:
Una manera d’utilitzar una unitat de mesura inercial ?: 6 passos
Una manera d’utilitzar una unitat de mesura inercial?: El context: estic construint per a la diversió un robot que vull moure de forma autònoma dins d’una casa. És un treball llarg i estic fent pas a pas. Ja he publicat 2 instruccions sobre aquest tema: una sobre la fabricació d'un codificador de rodes, una sobre
Conceptes bàsics del motor - Concepte súper fàcil d'entendre amb un experiment: 7 passos (amb imatges)
Conceptes bàsics del motor | Concepte súper fàcil d’entendre amb un experiment: en aquest instructiu us ensenyaré el principi fonamental subjacent dels motors. Tots els motors que ens envolten funcionen segons aquest principi. Fins i tot els generadors treballen en una declaració recíproca d’aquesta regla. Estic parlant de Ru de l’esquerra de Fleming
Cotxe Arduino (concepte): 4 passos
Arduino Car (Concept): Ara, Arduino es converteix automàticament en el millor bluetooth mitjançant una aplicació mòbil. Met deze app can je aangeven of de motors aan of uit moeten. Je can aangeven hoeveel hij moet draaien met de app door de graden van de hoek aan te geven hoever hoe moet
The Manta Drive: prova de concepte per a un sistema de propulsió ROV .: 8 passos (amb imatges)
El Manta Drive: prova de concepte per a un sistema de propulsió ROV: tots els vehicles submergibles presenten punts febles. Tot el que travessa el casc (porta, cable) és una fuita potencial i, si alguna cosa ha de perforar el casc i moure-se al mateix temps, el potencial de fuita es multiplica. Aquest resum instructiu