Stap 10: Integratie van de schetsen - deel 1 (Atmega 1)
Deze stap is specifiek voor het Atmega-1 die de Stepper Motor enige elke schets je ging bepalen zal door, alle van hen zijn toegepast en verdeeld in 3 microcontrollers, om bepaalde specifieke taken. Volg de 1ste diagram. Zijn de belangrijkste diagram van allemaal.
De functie millis(); doet alle magie. Ga naar help > Referentie > millis(), om meer erover te weten.
Opmerking:- De stappen kunnen blijken te rommelig zijn, Wees kalm, en als je alle stappen hebt gevolgd, de codering zal niet komen opdagen ingewikkeld te zijn.
Doelstelling 1:- Het bijhouden van de real time vereist voor de stepper eenmaal draaien
Dingen nodig:-
- 1 x Arduino UNO of wat dan ook met Atmega en een USB aangesloten op de computer
- Sommige fundamentele wiskunde nodig als unitaire methode en afstand = snelheid / tijd.. .very simple
Opmerking:- voor deze specifieke taak de microcontroller geeft alleen OUTPUT dus zijn niet vereist voor verbinding het naar de ULN 2003 of de Stepper Motor en de input die vereist van Atmega 2 is te leiden zelf is direct geïnitialiseerd in de tekening met de naam ATMEGA_1_test .txt.
Procedure:-
- Open de schets in de IDE analyseren het heel mooi. zijn zeer eenvoudig, er zijn veel ongewenste functie en regels uitgecommentarieerd die kan een beetje verwarrend maar geloof me als ik je vertel dat de definitieve schets die worden geüpload naar de ATMEGA 1 zullen elke ongewenste lijnen hebben
- Uploaden van de schets
- Snel openen van de seriële Monitor en uncheck de AutoScroll en controleren of de baud-rate is ingesteld op 4800 in de down - juiste hoek.
- Haal dan de USB.
- Sluit de seriële Monitor. [Maar sluit niet de Arduino IDE]
- Sluit de USB opnieuw
- Wacht enkele seconden voor de IDE te detecteren met welke COM-poort opnieuw
- Druk vervolgens op Shift + Ctrl + M.
- Ziet u na enige tijd vele waarden verschijnt één voor één.
- We moeten alleen de eerste lezing. Dat is de tijd genomen door de Atmega draaien de stepper van 0 - 4096 (één omwenteling), de lezing moet 5150, 5150 dwz milli tweede te draaien zodra
Wat we kunnen zien van de schets:-
- Max snelheid = 1000 stappen per seconde
- Max versnelling = 1000 stappen per seconde
- snelheid = 1000 stappen per seconde.
- verplaatst naar (afstand) = 0 - 4096 stap [1 rotatie]
Vragen:-
- tijd = afstand/snelheid = 4096 / 1000 = 4.096 secs voor één omwenteling... maar van de seriële monitor kregen we 5.150 secs hoe?
Antwoord:-
Er zijn vele lijnen van code die moet niet alleen de functie run() uitvoeren in de schets de while lus als verklaringen variabelen toe te wijzen en veel meer dingen, dus de extra tijd die nodig is voor hen om uit te voeren...
Snelheid veranderd:-
In eerste instantie de snelheid was ingesteld op 1000 stappen / sec in de schets, maar volgens de gegevens van de seriële Monitor de tijd voor één omwenteling in 5.150 SEC maar met een afstand te dekken is het zelfde d.w.z. van 0-4096 stap
Daarom
tijd = 5.150 sec; stappen om te worden behandeld (afstand) = 4096 stappen
Snelheid = afstand / tijd = 795.34 stappen / sec
Zie, vanaf 1000 stappen / SEC kwam het neer aan 795.34 stappen / sec
Realisatie:-
Stel je voor wat er zou zijn gebeurd dat als u zou hebben gebruikt 4.096 seconden in plaats van 5.150 aan sync de naderingssensoren om gegevens te verzenden naar ATMEGA 2... zou dat een blunder van de robot zou gedragen als een gek persoon.
Doelstelling 2:- Voor het uploaden van de echte schets naar de Atmega 1.
Dingen nodig:-
- Net dezelfde eisen.
Procedure:-
- Uploaden van de code, na het aanpassen of wijzigen van de pin-configuratie als nodig is, en lees de reacties, ik heb gewerkt een veel eenvoudiger opmerkingen veel mogelijk maken
- Gelieve te begrijpen eerst het programma, dat is belangrijker dan het voltooid
- Haal de USB
- Pak de Atmega 1, aan de achterkant van de Atmega schrijven up ATMEGA -1
- De Atmega-1 naar uw gewenste positie vast te stellen.
- Controleer nogmaals alle verbindingen...
Gevolgtrekking:- Begrepen hoe belangrijk is het voor de berekening van de bewerkingstijd van het programma. De tijd 5.150 secs per rotatie zal van een groot belang voor de volgende stap zijn
Gaan naar de volgende stap om het programma de Atmega 3 voor draadloze gegevensoverdracht... ik hoop dat jullie allemaal genoten...