INHOUDSOPGAWE:
- Stap 1: Sensor (Oog) QTR 8RC
- Stap 2: Mikrokontroleur (brein) Atmega328P
- Stap 3: Motor- en motorbestuurder
- Stap 4: Onderstel en meer
Video: PID -lynvolgers Atmega328P: 4 stappe
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:24
INLEIDING
Hierdie instruksie handel oor die maak van 'n doeltreffende en betroubare lynvolgers met PID (proporsioneel-integraal-afgeleide) beheer (wiskundig) in sy brein (Atmega328P).
Lynvolger is 'n outonome robot wat 'n swart lyn in wit of wit lyn in swart gebied volg. Die robot moet 'n spesifieke lyn kan opspoor en dit kan volg.
Daar sal dus 'n paar dele/stappe wees om 'n LYNVOLGER te maak; ek sal almal stap vir stap bespreek.
- Sensor (oog om die lyn te sien)
- Mikrokontroleur (brein om 'n paar berekeninge te doen)
- Motors (spierkrag)
- Motorbestuurder
- Onderstel
- Battery (energiebron)
- Wiel
- Diverse
Hier is die VIDEO VAN DIE LYNVOLGER
IN DIE VOLGENDE STAPPE BESPREEK EK IN BESONDERHEDE OOR ELKE KOMPONENTE
Stap 1: Sensor (Oog) QTR 8RC
Dankie aan Pololu vir die vervaardiging van hierdie wonderlike sensor.
Die module is 'n gerieflike draer vir agt IR -emitter en ontvanger (fototransistor) pare wat eweredig gespasieer is met 'n interval van 0,375 (9,525 mm). Om 'n sensor te gebruik, moet u eers die uitsetknoop (laai van die kondensator) laai deur 'n spanning op sy OUT -pen. U kan dan die reflektansie lees deur die spanning wat ekstern verskaf word, te onttrek en tydsberekening te neem hoe lank dit neem om die uitgangsspanning te verval as gevolg van die geïntegreerde fototransistor. Korter verval is 'n aanduiding van groter refleksie. Hierdie metingsbenadering het verskeie voordele, veral as dit gekoppel is aan die vermoë van die QTR-8RC-module om LED-krag uit te skakel:
- Geen analoog-na-digitale omskakelaar (ADC) is nodig nie.
- Verbeterde sensitiwiteit oor analoge uitset van spanningsverdeler.
- Parallelle lees van verskeie sensors is moontlik by die meeste mikrobeheerders.
- Parallelle lees maak die gebruik van die LED -krag -opsie moontlik
Spesifikasies
- Afmetings: 2,95 "x 0,5" x 0,125 "(sonder kopstukke geïnstalleer)
- Bedryfspanning: 3.3-5.0 V
- Voedingsstroom: 100 mA
- Uitsetformaat: 8 digitale I/O-versoenbare seine wat as 'n tydsberekende hoë pols gelees kan word
- Optimale waarnemingsafstand: 0,125 "(3 mm) Maksimum aanbevole waarnemingsafstand: 0,375" (9,5 mm)
- Gewig sonder koppenne: 3,11 g
Koppel die QTR-8RC-uitsette aan digitale I/O-lyne
Die QTR-8RC-module het agt identiese sensoruitsette wat, net soos die Parallax QTI, 'n digitale I/O-lyn benodig wat die uitsetlyn hoog kan dryf en dan die tyd meet vir die uitgangsspanning om te verval. Die tipiese volgorde vir die lees van 'n sensor is:
- Skakel IR -LED's aan (opsioneel).
- Stel die I/O -lyn op 'n uitset en dryf dit hoog.
- Laat die sensoruitset minstens 10 μs toe.
- Maak die I/O -lyn 'n inset (hoë impedansie).
- Meet die tyd vir die spanning om te verval deur te wag totdat die I/O -lyn laag word.
- Skakel IR -LED's af (opsioneel).
Hierdie stappe kan tipies parallel uitgevoer word op verskeie I/O -lyne.
Met 'n sterk reflektansie kan die verval tyd so laag wees as 'n paar dosyn mikrosekondes; sonder refleksie kan die verval tyd tot 'n paar millisekondes wees. Die presiese tyd van die verval hang af van die I/O -lynkenmerke van u mikrobeheerder. In tipiese gevalle kan betekenisvolle resultate binne 1 ms beskikbaar wees (d.w.s. as u nie subtiele verskille in lae-reflektans-scenario's wil meet nie), wat tot 1 kHz monsterneming van al 8 sensors moontlik maak. As monsterneming met 'n laer frekwensie voldoende is, kan aansienlike kragbesparings verkry word deur die LED's uit te skakel. Byvoorbeeld, as 'n 100 Hz -monstertempo aanvaarbaar is, kan die LED's 90% van die tyd af wees, wat die gemiddelde stroomverbruik van 100 mA tot 10 mA verlaag.
Stap 2: Mikrokontroleur (brein) Atmega328P
Dankie aan Atmel Corporation vir die vervaardiging van hierdie wonderlike mikrobeheerder AKA Atmega328.
Belangrike parameters vir ATmega328P
Parameter Waarde
- Flits (kbytes): 32 kbytes
- Speldtelling: 32
- Maks. Bedryfsfrekwensie (MHz): 20 MHz
- CPU: 8-bis AVR
- Maksimum I/O -penne: 23
- Ext Interrupts: 24
- SPI: 2
- TWI (I2C): 1
- UART: 1
- ADC -kanale: 8
- ADC -resolusie (bisse): 10
- SRAM (Kbytes): 2
- EEPROM (Bytes): 1024
- I/O -aanbodklas: 1.8 tot 5.5
- Bedryfspanning (Vcc): 1.8 tot 5.5
- Timers: 3
Gaan deur die datablad van Atmega328P vir gedetailleerde inligting.
In hierdie projek gebruik ek Atmega328P om 'n paar redes
- Goedkoop
- Het genoeg RAM vir berekening
- Voldoende I/O -penne vir hierdie projek
- Atmega328P word gebruik in Arduino …. U kan 'n Arduino Uno op die foto en video sien, maar nader gebruik ek Arduino IDE of enige Arduino. Ek het slegs die hardeware as 'n koppelvlak gebruik. Ek het die selflaaiprogram uitgevee en USB ASP gebruik vir die programmering van die chip.
Vir die programmering van die chip het ek Atmel Studio 6 gebruik
Al die bronkode is in GitHub, laai dit af en kyk na die test.c -lêer.
Om hierdie pakket saam te stel, moet u die POLOLU AVR LIBRARY SETUP aflaai en installeer Kontroleer die aanhangsels …
Ek laai ook 'n Atmega328P -ontwikkelingsbordskema en bordlêer op … U kan dit self vervaardig …
Stap 3: Motor- en motorbestuurder
Ek het 'n 350RPM 12V BO -tipe DC -motor as aandrywer gebruik. Vir meer inligting … MOTOR LINK
As motorbestuurder het ek L293D H- brug IC gebruik.
Ek heg die skematiese en raadslêer hiervoor aan.
Stap 4: Onderstel en meer
Die bot bestaan uit laaghout met 'n dikte van 6 mm.
Aanbeveel:
Selfbalanserende robot - PID -beheeralgoritme: 3 stappe
Selfbalanserende robot - PID -beheeralgoritme: Hierdie projek is bedink omdat ek belangstel om meer te wete te kom oor beheeralgoritmes en hoe om funksionele PID -lusse effektief te implementeer. Die projek is nog in die ontwikkelingsfase, aangesien 'n Bluetooth -module nog nie bygevoeg moet word nie
PID -beheerder VHDL: 10 stappe
PID Controller VHDL: Hierdie projek was my finale projek om my Honneurs Baccalaureusgraad van Cork Institute of Technology te voltooi. Hierdie handleiding is in twee afdelings verdeel, die eerste sal die hoof PID -kode dek, wat die hoofdoel van die projek en die
Beheer temperatuur huis met PID en Labview: 4 stappe
Beheertemperatuur huis met PID en Labview: PID kan ook 'n pingontrolan -stelsel bied wat u kan toelaat om 'n enkele industrie te gebruik, maar dit kan ook 'n kombinasie van verskillende PID -kontroles vir ons bied
Tower Copter met PID -beheerder: 4 stappe
Tower Copter Met PID Controller: Hallo ouens, my naam is Wachid Kurniawan Putra, vandag deel ek my mikrokontroleprojek met my span. My span bestaan uit 4 mense, insluitend myself, hulle is: 1. Juan Andrew (15/386462 / SV / 09848) 2. Wachid Kurniawan Putra (17/416821 / SV / 14559) 3
PID -beheerde balbalanserings Stewart -platform: 6 stappe
PID -beheerde balbalansering Stewart -platform: motivering en algehele konsep: As fisikus in opleiding is ek natuurlik aangetrokke tot en probeer ek om fisiese stelsels te verstaan. Ek is opgelei om komplekse probleme op te los deur dit op te deel in hul mees basiese en noodsaaklike bestanddele, dan