Stap 8: De code downloaden en testen van de elektronica
Download de code op uw computer
Het eerste ding om te doen is het krijgen van de Arduino schets voor de A-Star.
- De code naar uw computer downloaden vanaf hier.
- Het injecteren van de code in uw favoriete IDE.
- Zorg ervoor dat de code wordt gecompileerd in uw IDE.
- [Op dit punt optioneel] Download de code in de A-Star.
De schets heeft twee belangrijkste bestanden. desk_clock.Ino en stepper.cpp. De laatste heeft een bijbehorende stepper.h.
Schakelaar behandeling
desk_clock.Ino natuurlijk bevat de functies Setup en loop, maar het is primair verantwoordelijk voor het behandelen van de schakelaar, debouncing, timing en tellen persen en releases te interpreteren "gebruikersinvoer" gedaan via de switch. De interpretatie van de schakelaar is een beetje geheimzinnige.
De klok kunnen in twee grote landen: uitgevoerd en gestopt. Als de schakelaar wordt ingedrukt terwijl gestopt, begint de klok onmiddellijk.
Als de schakelaar wordt ingedrukt tijdens het hardlopen, wordt de klok onmiddellijk stopt. Als dat pers minder dan de "wachttijd duurt" (ingesteld op 2000 milliseconden), dan gewoon stopt met de klok. Als dat gaat langer mee dan de "wachttijd" drukt, gaat de klok ook in sub staat "set mode". Twee persbericht/cycli moeten gebeuren aan de ingestelde modus verlaten. Merk op dat de klok wordt gestopt wanneer het invoeren van de ingestelde modus en blijft gestopt na het verlaten van ingestelde modus.
De duur van beide persen in de twee cycli van het persbericht/tijdens de ingestelde modus zijn belangrijk. Als een pers dan de "grens tijd duurt" (ingesteld op 1000 milliseconden), het wordt beschouwd als een "stip". Als de pers langer duurt, wordt het beschouwd als een "dash". De vier stip-streep-combinaties toestaan dat een stel de snelheid en de richting van de beweging van de klok via stappenmotor, of uitschakelen van de stappenmotor. De interpretaties:
- dot/dot--normale snelheid (de tweede hand draait op 1 RPM) en met de klok mee
- stip/streep--24 X de normale snelheid en met de klok mee
- Dash/dot--24 X de normale snelheid en tegen de klok in
- Dash/dash--uitschakelen van de bestuurder, dus de stappenmotor uitschakelen
Combinatie 1 uiteraard zorgt ervoor dat de klok tijd te houden. Combinatie van 2 kunt instellen van de klok vooruit, bijvoorbeeld om naar zomertijd uit standaardtijd. Combinatie 3 kunt instellen van de klok achteruit, bijvoorbeeld om naar standaardtijd naar zomertijd. Combinatie 4 zorgt ervoor dat handmatige instelling ofwel vooruit of achteruit; het zelfde ding zou doen door het loskoppelen van de klok.
Opmerking: Wanneer mijn klok wordt uitgevoerd in de ingestelde snelheid (24 X) in vooruit of achteruit, er is een beetje van vistuig lawaai wanneer de tweede hand op een bepaalde locatie is. Dit is normaal als gevolg van de hogere snelheid en versnellingen "dragen in". U hoort niet geen geluid helemaal niet, van de motor of de versnellingen, bij normale snelheid. Als u dit doet, is iets serieus mis.
U kan zeker een andere interpretatie van schakelaar persen/releases implementeren. Ik ben er echter zeker betere regelingen bestaan. Verder kunt u een verschillende I/O pin te lezen van de switch; Natuurlijk, zou het circuit moeten veranderen om te denken een andere pin.
Stepper motorische controle
De stepper.* -bestanden bepalen de SilentStepStick, die de stappenmotor drijft. Het is een geluk dat de standaardconfiguratie van SilentStepStick is precies wat nodig is. Zo, zijn er slechts drie besturingsseinen nodig.
- Inschakelen: schakelt de bestuurder; of Er is geen kracht toegepast op de motor wanneer uitgeschakeld
- Richting: bepaalt de richting van rotatie; voor de klok, betekent dit dat met de klok mee of tegen de klok in
- Stap: vertelt de motor stap (u kunt lezen over de resulterende micro-intensivering in de documentatie van de SilentStepStick)
Het enige interessante aspect van de controle is de generatie van het signaal van de stap. De frequentie van het signaal is zeer om precies te zijn, ten minste gedurende een redelijke periode, om de nauwkeurigheid van de klok. Er zijn waarschijnlijk vele manieren om dit te doen correct. Ik koos voor het genereren van het signaal van de stap met behulp van de ATmega32U4 Timer 3, die een "PWM"-signaal naar digitale pin 5 kan uitvoeren. Raadpleeg de ATmega32U4 documentatie, sectie 14.8.3, voor meer informatie.
Terwijl pin 5 voor het signaal van de stap is gemandateerd door het gebruik van Timer 3, kunnen de andere twee besturingsseinen worden op iedere andere staat van digitale i/o pin. Alternatieven kunt u indien gewenst.
Testen van de elektronica
U kunt nu doen wat heet vaak "integratie testen". Eén mogelijkheid is om te voltooien van de installatie van de elektronica, de stroomtoevoer,... gaan. Dit leidt vaak tot een ramp. Ik beveel een conservatievere benadering, dat wil zeggen, één ding testen op een tijdstip en vervolgens combinaties, totdat alles is geïntegreerd in het geheel.
Bijvoorbeeld, zou ik adviseren 'test' schetsen uit de originele schets voortvloeiende:
- Één kon alleen de switch en staat beheer testen. Debug verklaringen in de oorspronkelijke tekening kunnen u zien wat er gebeurt. U moet alleen de stekker in de vergadering van de schakelaar aan de printplaat en sluit uw computer via USB aan op de A-Star.
- Men kon alleen de mogelijkheid om het genereren van de juiste stap signaal frequenties testen. U zou moeten een oscilloscoop om te controleren of de frequenties. U moet alleen uw computer via USB sluit aan op de A-Star.
Uiteraard op een bepaald punt moet u om het hele systeem te testen. Dit redelijk makkelijk te doen voor de eindmontage. Draden bungelen, zul je dus het zou kunnen helpen om steun voor de printplaat en de schakelaar te hebben. Om te testen
- Download de desk_clock schets naar de A-Star.
- Ontkoppel de USB.
- Sluit de vergadering van de macht aan de printplaat.
- Sluit de vergadering van de schakelaar aan de printplaat.
- Sluit de stappenmotor aan de printplaat. BELANGRIJK: De zwarte draad moet het dichtst bij de USB-connector van de A-Star.
- Sluit de lichtnetadapter aan de vergadering van de macht.
Als u de stroomtoevoer, kan u mag of niet horen of te zien iets gebeurt met de beweging van de klok. Echter minder dan een seconde na het toepassen van macht, u moet horen niets, en de handen moeten niet te bewegen. Voor het testen van alles
- Druk op en laat de knop los. De handen moeten worden uitgevoerd op een normale snelheid in een richting van de klok.
- Druk op en snel de loslaat. De handen moeten stoppen wanneer u op de knop drukt.
- Druk op en laat de knop om te beginnen de handen weer.
- Houd de knop ingedrukt gedurende ten minste twee seconden (als u de "wachttijd" niet hebt gewijzigd). De handen moeten onmiddellijk stoppen op de pers, en de lange pers zet de klok in "set mode".
- Druk op en snel de loslaat.
- Houd de knop ingedrukt gedurende ten minste één seconde (als u de "grens tijd" niet hebt gewijzigd).
- Druk op en laat de knop los. De handen moeten draaien op 24 X normale snelheid in een richting van de klok.
- Houd de knop ingedrukt gedurende ten minste twee seconden. Dit stopt de klok en zet het in "set mode".
- Houd de knop ingedrukt gedurende ten minste één seconde.
- Druk op en laat de knop los.
- Druk op en laat de knop los. De handen moeten worden uitgevoerd op 24 X normale snelheid in een klok.
- Houd de knop ingedrukt gedurende ten minste twee seconden. Dit stopt de klok en zet het in "set mode".
- Druk op en laat de knop los.
- Druk op en laat de knop los.
- Druk op en laat de knop los. De handen moeten worden uitgevoerd op een normale snelheid in een richting van de klok.
- Houd de knop ingedrukt gedurende ten minste twee seconden. Dit stopt de klok en zet het in "set mode".
- Houd de knop ingedrukt gedurende ten minste één seconde.
- Houd de knop ingedrukt gedurende ten minste één seconde. U moet vrij kunnen bewegen de tweede hand, als er geen stroom naar de motor zou moeten zijn.
- Druk op en laat de knop los. De handen moeten worden uitgevoerd op een normale snelheid in een richting van de klok.
U, als u net als ik, wellicht een beetje moeite met de wachttijden voor de knop. Als in het begin je niet lukt, probeer, probeer het opnieuw. Als u echter merken dat je niet het juiste gedrag, kan er iets mis is met de switch, of het kan worden gedownload u de verkeerde code.