Stap 6: Code
Eerst unzip de map Bibliotheken, en het importeren van uw arduino IDE-bibliotheken.
Er zijn twee codes die u wilt gebruiken.
Een heet Kleur lezen, en dit is degene die u zult moeten eerst uploaden om te debuggen uw programma in te stellen van de juiste kleuren. Gewoon open de seriële monitor en terwijl de plaatsing in uw M & M, noteer de RGB-waarden en hen te veranderen in de code die overeenkomt met de kleur van de M & M je in. Wanneer u een wijziging aanbrengt in het project dat is van invloed op de kleur-sensor, zorg ervoor dat u opnieuw uw gebruik van deze kleuren kalibreren.
De tweede is uw werkelijke project schets, MMs Sortergenoemd.
Hieronder volgt een beschrijving van de werking van elk deel van de code:
- Er zijn verschillende functies die de schaalfactor van kleuren op basis van de huidige omgeving kleur sensor en geïnitialiseerd. Vanaf hier loopt de hoofdlus de kleur sensor, en op basis van de frequentie-lezing, zal het conditionele evalueren om te bepalen welke kleur de M & M is, en daarom waar het moet worden afgezet. Binnen elke voorwaardelijke ziet u een unieke servo-locatie, en vervolgens een 1/6 volledige omwenteling om de daling van de M & M beneden en beneden de dia.
Uitleg van de functies:
- TCS_Init(): Kaarten de pinnen van de sensor van de kleur en de bevoegdheden op de kleur sensor
- TSC_FilterColor (int Level01, int Level02): geselecteerd filter kleur (rood, groen of blauw)
- TSC_Count(): Verhoogt de array om te wisselen van de filters
- TSC_Callback(): Filters zonder kleuren één tegelijk (voorloper van witbalans)
- TSC_WB(): Hiermee bepaalt u welke wit is in de huidige omgeving
- ISR(TIMER2_COMPA_vect): Timer voor de servo
- VOID servoInit(): Setup voor servo
- VOID servoSetPosition (uint16_t highTimeMicroseconds): functie waarin servo naar een locatie
Met de bovenkant af en de arduino nog aangesloten op de computer, uw seriële monitor te gebruiken om eventuele problemen op te lossen. Breng wijzigingen aan servo positie en kleur-frequenties.