Uppgradera Analog linje efterföljare till Arduino med Attiny85 (3 / 3 steg)
Steg 3: Programmering av Attiny85
Siffror: (övre) raden anhängare med LM393 logik IC, Obs skåran på LM393 pekar i körande riktning och (nederst) rad efterföljare med Attiny85 stoppats in, Vänligen notera Attiny stift 1 (små hål på Attiny casing) också pekar i körriktningen.
.
Koden
Arduino koden visas här (se nedan) och är ganska självförklarande. Några riktlinjer inom skissen ges till port och den andra Arduinos som Pro mini, Nano eller Uno.
Först kontrollera att du har Arduino IDE inrätta och Attiny85 styrelsen finns tillgänglig via styrelser manager (se ovan). Välj Attiny85 och som hastigheten till 1MHz (intern). Högre processorhastigheter fungerar, men behövs inte.
Öppna exempelkoden i Arduino IDE, bränna bootloader, och kompilera och ladda upp koden till Attiny85.
Om allt gick OK, placera Attiny85 i socked på den protoboard du förberett, med prick (pin 1) pekar till den körande riktningen. Placera protoboard i uttaget på rad efterföljare, som anges ovan. Sedan driva upp rad efterföljare och hoppas att det finns ingen magi rök.
Efter start tar koden 2 andra paus. Under detta har du tid att placera linjen anhängare på en vit (eller ljus) ytan. Därefter vibrera motorerna för att ange kalibrering kommer att äga rum, och vibrera igen för att signalera kalibreringen är klar. En sekund senare kommer att rad efterföljare börja köra.
Kalibreringen görs genom tio prov tas i ljus känsliga celler, lägga till dem i variabeln kalibrering, och därefter dividera variabeln kalibrering av 10 för att beräkna medelvärdet. Därefter läggs en förskjutning till kalibreringsvärde, att förhindra att små förändringar i ljusstyrka orsaka felaktiga avläsningar av svart och vitt. Som indikeras i exempelkoden, kan du spela med värdet på konstanten SensorOffset att förbättra prestanda för svarta och vita upptäckt.
Drivande logiken själv är ganska enkel. Om båda sensorerna finns vit eller båda sensorerna i svart, snurra båda motorer. Om en av sensorerna ser svart och den andra vita, stoppas rätt motorn för att göra en sväng.
Observera att som motorerna drivs med PNP transistorer, en hög utsignal stannar motorerna, och en låg signal kan motorerna snurra.
Variabla motstånd
Rad efterföljare innehåller två variabla motstånd, som är avsedda att kalibrera sensorerna medan rad efterföljare var igång med den ursprungliga LM393 IC. I princip placera av motstånden är irrelevant efter Attiny85 konverteringen, men rekommenderas att placerar motstånden i mittläget innan du slår upp den rad efterföljaren.
Detta avslutar detta Instructable. Vi hoppas att det kommer att inspirera dig att genomföra något liknande, förbättra intelligensen och/eller lägga till fjärrkontroll kapacitet.