Stänga slingan på ytmontering lödning (2 / 4 steg)
Steg 2: Programvara för kontroll
Användbart som det är, IR temperaturgivaren är bara en del av systemet. För att kontrollera temperaturen, tre objekt krävs: en värmekälla, en temperaturgivare och en styrenhet som kan läsa sensorn och kommandot värmekällan. I vårt fall värmeplattan är värmekällan, IR temperaturgivaren (ändrat i jumbon kliva) är sensor och en Ard/Free-duino kör lämplig programvara är registeransvarig. Alla program som detta Instructable kan laddas ner som en Arduino paketet och som en bearbetning paket.
Hämta filen IR_PID_Ard.zip. Packa upp den i din Arduino katalog (oftast mina dokument/Arduino). Hämta filen PID_Plotter.zip. Packa upp den i katalogen bearbetning (oftast mina dokument/bearbetning). Filerna kommer nu att finnas i de lämpliga skissböcker.
Programvaran använder vi skrevs ursprungligen av Tim Hirzel. Den ändras genom att lägga till gränssnittet mot IR-sensorn (tillhandahålls av Scott Dixon). Programmet genomför en kontroll algoritm som kallas PID algoritmen. PID står för proportionell-Integral-derivat och är standard algoritmen som används för industriella temperaturkontroll. Denna algoritm beskrivs i en utmärkt artikel av Tim Wescott som Tim Hirzel baserat sin programvara. Läs artikeln här.
Att stämma den algoritm (Läs om detta i artikeln nämns) och ändra målet temperaturinställningar, kommer att vi använda en bearbetning skiss, också utvecklats av Tim Hirzel. Det utvecklades för rostning kaffebönor (en annan tillämpning av temperaturkontroll) och kallades den nakna ben kaffe Controller, eller BBCC. Namn åt sidan, det fungerar bra för ytmontering lödning. Du kan hämta den ursprungliga versionen här.
Ändra programvaran
I följande, jag antar att du är bekant med Arduino och bearbetning. Om du inte, bör då du gå igenom tutorials tills saker börja göra känsla. Se till att posta kommentarer till detta Instructable och jag ska försöka hjälpa till.
PID-regulator måste ändras för din Arduino/Freeduino. Klockan linjen från IR-sensorn måste kopplas till ett avbrott stift. På en Arduino, kan detta vara 1 eller 0. På Freeduinos av olika slag, kan du använda alla tillgängliga avbrott. Koppla data linjen från sensorn till en närliggande pin (som D0 eller D1 eller en annan PIN-kod för att förstora). Manöverledningen till värmeplattan kan komma från någon digital stift. På min särskilda Freeduino klon (Beskriv här), jag använde D1 och tillhörande avbrottet (1) för klocka, D0 för data, och B4 för manöverledningen till värmeplattan.
Efter du laddat ner programvaran, starta din Arduino miljö och öppna IR_PID från filen/Sketchbook menyn. Under fliken pwm definierar du HEAT_RELAY_PIN som är lämpligt för din Arduino eller Freeduino variant. Gör samma sak för IR_CLK PIN, IR_DATA stift och IR_INT under fliken temp. Du bör vara redo att kompilera och ladda ner.
På samma sätt starta din bearbetning miljö och öppna PID_Plotter skissen. Justera hastighet att korrekt värde och se till att ange korrekt värde för ditt system (min port är index 1) för det index som användes i Serial.list() [1].