Indholdsfortegnelse:

Lukning af sløjfen på overflademontering Lodning: 4 trin
Lukning af sløjfen på overflademontering Lodning: 4 trin

Video: Lukning af sløjfen på overflademontering Lodning: 4 trin

Video: Lukning af sløjfen på overflademontering Lodning: 4 trin
Video: ANGULUS - BEGYNDERSANDAL M/SLØJFE - ROSA LAK 2024, Juli
Anonim
Lukning af sløjfen på overflademontering
Lukning af sløjfen på overflademontering

Temperaturen virker som den letteste ting i verden at kontrollere. Tænd for ovnen, og indstil den ønskede temperatur. Tænd for ovnen om morgenen, og indstil termostaten. Juster det varme og kolde vand for at gøre brusebadet helt rigtigt. Let! Men hvad nu hvis du vil kontrollere temperaturen ud over disse daglige applikationer? Hvis du vil have temperaturer uden for de normale områder eller vil have en stabil temperatur inden for et snævert område, er du for det meste alene.

I mit tilfælde ønskede jeg at kontrollere temperaturen på en varmeplade, der bruges til overflademontering. I første omgang brugte jeg pulsbreddemodulation til at give stabile temperaturer og eksperimentelt bestemte indstillinger for at oprette den nødvendige temperaturprofil. Du kan læse alt om det i denne Instructable. Dette system fungerer og kontrol af temperaturen på denne måde er alt godt og godt, men det har mangler.

Mangler:

  • Fungerer kun til min specifikke kogeplade. Andre er ens, men ikke identiske, og eksperimenter er nødvendige for at bestemme de indstillinger og tidspunkter, der er nødvendige for at producere den påkrævede profil.
  • Samme situation, hvis jeg vil have en anden profil eller temperatur.
  • Lodningsprocessen tager lang tid, da stabile temperaturer skal nås langsomt.

Ideelt set kunne vi bare angive en temperatur-tidsprofil, trykke på en knap, og controlleren ville få kogepladen til at fungere som programmeret. Vi ved, at dette er muligt, da der er mange industrielle processer, der bruger præcis denne form for kontrol. Spørgsmålet er, om dette kan gøres let og billigt derhjemme?

Som du måske har gættet, er svaret ja, da jeg skriver denne Instructable, ja! Denne instruktør viser dig, hvordan du bygger din egen temperaturstyring med industriel styrke. Jeg vil især målrette overflademonteret lodning, men enhver proces, der kræver præcis tidstemperaturprofil, kan bruge dette system.

Bemærk: Når jeg bruger navnet "Arduino", mener jeg ikke bare selve (ikke helt) ophavsretligt beskyttede Arduino, men også de mange public domain -versioner, der samlet kaldes "Freeduino". I nogle tilfælde bruger jeg udtrykket "Ard/Free-duino", men vilkårene bør betragtes som udskiftelige i forbindelse med denne instruks.

Temperaturreguleringsskemaet, der bruges i Extreme Surface Mount Lodning Instructable, er kendt som open-loop-kontrol. Det vil sige, at en værdi, der tidligere har produceret den ønskede temperatur, forventes at producere den samme temperatur, når den bruges igen. Ofte er dette sandt og giver det ønskede resultat. Men hvis forholdene er lidt forskellige, siger garagen, hvor vi arbejder, er meget køligere eller varmere, så får du muligvis ikke det forventede resultat.

Hvis vi har en sensor, der kan aflæse temperaturen og rapportere den tilbage til en controller, så har vi lukket kredsløbskontrol. Controlleren er i stand til at indstille en startværdi for at øge temperaturen, se på temperaturen som tiden går og justere indstillingen for at få temperaturen til at gå højere eller lavere, indtil den ønskede temperatur er nået.

Vores tilgang vil være at erstatte den AVRTiny2313-baserede PWM-controller med en mere kraftfuld ATMega-baseret controller. Programmering vil blive udført i Arduino -miljøet. Vi bruger en pc (Linux-Mac-Windows), der kører Processing til at vise resultaterne og justere controlleren.

Til sensoren bruger vi en infrarød temperatursensor fra Harbor Freight. IR -sensoren ændres til at udsende temperaturen som en seriel datastrøm, som controlleren kan læse. Vi bruger en Ard/Free-duino som controller med en pc (Mac-Linux-Windows) til input til controlleren. Når vi alle er færdige, vil systemet ligne billedet. (Du kan dog have mindre fremmede kredsløb på dit brødbræt. Det er OK.)

Trin 1: Ændring af IR -sensoren

Ændring af IR -sensoren
Ændring af IR -sensoren
Ændring af IR -sensoren
Ændring af IR -sensoren
Ændring af IR -sensoren
Ændring af IR -sensoren

Mange tak til min kloge ven, Scott Dixon, for hans omhyggelige detektivarbejde med at finde ud af, hvordan dette instrument fungerer, og hvordan det generelt kan bruges med en controller ved at afsløre dets serielle interface.

Enheden, vi starter med, er Harbor Freight-varenummer: 93984-5VGA. Koster omkring $ 25. Gider ikke købe garantien.:)} Her er linket. Figur 1 og 2 viser for- og bagside. Pilene på figur 2 angiver, hvor skruerne er, der holder sagen sammen. Figur 3 viser indersiden af kabinettet, når skruerne fjernes, og kassen åbnes. Laserpegermodulet kan sandsynligvis fjernes og bruges til andre projekter, selvom jeg ikke har gjort dette endnu. Pilene peger på skruerne for at fjerne, hvis du vil tage brættet ud for at lodde til det (skruer fjernet i dette billede). Det er også angivet det område, hvor der skal foretages en afbrydelse for dine ledninger til at forlade kassen. Se også figur 5. Lav udskæringen, mens brættet fjernes, eller i det mindste før du lodder trådene på. Det er lettere på den måde.;)} Figur 4 viser, hvor ledningerne vil blive loddet. Bemærk bogstavet for hver forbindelse, så du ved, hvilken ledning der er, når du lukker sagen. Figur 5 viser ledningerne loddet på plads og ført gennem udskæringen. Du kan nu sætte sagen sammen igen, og instrumentet skal fungere, som det gjorde før din operation. Bemærk stikket på ledningerne. Jeg bruger længere ledninger til faktisk at oprette forbindelse til min controller. Hvis du bruger en lille ledning, et lille stik og holder ledningerne korte, kan du stikke det hele tilbage i kassen, hvis du ønsker det, og instrumentet ser uændret ud. Scott har også skabt softwaren til at interface denne enhed. Han brugte dette dokument, hvis du vil have detaljerne. Det er det! Du har nu en IR -temperatursensor, der fungerer fra -33 til 250 C.

Trin 2: Software til kontrol

Software til kontrol
Software til kontrol

IR -temperatursensoren er nyttig, som den kun er en del af systemet. For at styre temperaturen kræves tre emner: en varmekilde, en temperatursensor og en controller, der kan aflæse sensoren og styre varmekilden. I vores tilfælde er varmepladen varmekilden, IR-temperatursensoren (som ændret i det sidste trin) er vores sensor, og en Ard/Free-duino, der kører passende software, er controlleren. Al software til denne Instructable kan downloades som en Arduino -pakke og som en Processing -pakke.

Download filen IR_PID_Ard.zip. Pak det ud i dit Arduino -bibliotek (normalt Mine dokumenter/Arduino). Download filen PID_Plotter.zip. Pak det ud i din forarbejdningskatalog (normalt Mine dokumenter/behandling). Filerne vil nu være tilgængelige i de relevante skitsebøger.

Den software, vi vil bruge, blev oprindeligt skrevet af Tim Hirzel. Det ændres ved at tilføje grænsefladen til IR -sensoren (leveret af Scott Dixon). Softwaren implementerer en kontrolalgoritme kendt som PID -algoritmen. PID står for Proportional - Integral - Derivative og er standardalgoritmen, der bruges til industriel temperaturkontrol. Denne algoritme er beskrevet i en fremragende artikel af Tim Wescott, som Tim Hirzel baserede sin software på. Læs artiklen her.

For at justere algoritmen (læs mere om dette i den nævnte artikel) og for at ændre måltemperaturindstillinger, vil vi bruge en Processing sketch, også udviklet af Tim Hirzel. Det blev udviklet til ristning af kaffebønner (en anden anvendelse af temperaturkontrol) og blev kaldt Bare Bones Coffee Controller eller BBCC. Navn til side, det fungerer godt til overflademontering. Du kan downloade den originale version her.

Ændring af softwaren

I det følgende antager jeg, at du kender Arduino og Processing. Hvis du ikke er det, skal du gå igennem selvstudierne, indtil tingene giver mening. Sørg for at sende kommentarer til denne instruks, og jeg vil prøve at hjælpe.

PID -controlleren skal ændres til din Arduino/Freeduino. Urlinjen fra IR -sensoren skal fastgøres til en afbrydelsesstift. På en Arduino kan dette være 1 eller 0. På Freeduinos af forskellig art kan du bruge alle tilgængelige afbrydelser. Sæt datalinjen fra sensoren til en anden pin i nærheden (f.eks. D0 eller D1 eller en anden pin efter eget valg). Kontrollinjen til kogepladen kan komme fra enhver digital pin. På min særlige Freeduino -klon (beskriv her) brugte jeg D1 og den tilhørende afbrydelse (1) til ur, D0 til data og B4 til kontrollinjen til varmepladen.

Når du har downloadet softwaren, skal du starte dit Arduino -miljø og åbne IR_PID fra menupunktet Fil/Skitsebog. Under fanen pwm kan du definere HEAT_RELAY_PIN som passende for din Arduino- eller Freeduino -variant. Under fanen Temp skal du gøre det samme for IR_CLK PIN, IR_DATA PIN og IR_INT. Du skal være klar til at kompilere og downloade.

Start på samme måde dit behandlingsmiljø og åbn PID_Plotter -skitsen. Juster BAUDRATE til den korrekte værdi, og sørg for at indstille indekset, der bruges i Serial.list () [1] til den korrekte værdi for dit system (min port er indeks 1).

Trin 3: Tilslut det hele

Tilslutter det hele
Tilslutter det hele
Tilslutter det hele
Tilslutter det hele
Tilslutter det hele
Tilslutter det hele

Kogeplade AC -kontrolsystemet er beskrevet i Extreme Surface Mount Lodning Instructable allerede nævnt, eller du kan købe dit eget SSR (solid state relæ). Sørg for, at den kan klare varmepladebelastningen med tilstrækkelig margen, siger en 20 til 40 watt -rating, da testningen udført af kineserne kan efterlade noget at ønske om. Hvis du bruger varmeplade AC-controlleren fra min Instructable, skal du køre en jumper fra modstanden på kontrolindgangen til jorden på Ard/Free-duino og en jumper fra kontroludgangen (B4, eller hvad du end valgte) til Control Signal Input. Se billedet af controlleren. Den gule jumper er kontrolsignalindgangen, og den grønne jumper går til jorden. Jeg kan godt lide at bruge en blinkenlight (ledet med en modstand til jorden) på output -stiften, så jeg ved, hvornår den er tændt. Tilslut din jumper mellem led og port som vist. Se Teensy ++ tilslutningsdiagrammet.

Opret nu en støtte til at holde IR -temperatursensoren over din kogeplade. Billedet viser, hvad jeg lavede. Enkel, men robust er reglen. Hold alt brandfarligt væk fra kogepladen; sensoren er af plast og synes at være fint 3 tommer over pladens overflade. Kør ledninger fra stikket på din sensor til de relevante stifter på din Ard/Free-duino. Forbindelser til IR -sensoren er vist i Teensy ++ tilslutningsdiagrammet. Tilpas disse efter behov til din Ard/Free-duino.

Vigtig sikkerhedsbemærkning: IR -sensoren har en ledemarkør, der hjælper med at rette den. Hvis du har katte som min, elsker de at jagte ledemarkøren. Så dæk LED'en med noget uigennemsigtig tape for at forhindre dine katte i at hoppe på kogepladen, når du bruger den.

Inden du tilslutter varmeplade AC -controlleren til 120V, kan du her teste systemet og indstille startmålværdier for temperatur. Jeg foreslår en måltemperatur på 20 C, så opvarmning ikke starter med det samme. Disse værdier gemmes i EEPROM og bruges næste gang, så sørg for altid at gemme en lav værdi som måltemperaturen, når du er færdig med en loddesession. Jeg synes, det er en god idé at starte temperaturregulatoren med varmepladen først koblet fra. Sørg for, at alt fungerer, før du tilslutter det.

Tilslut din serielle port til din Arduino, og tænd for den. Kompilér Arduino -skitsen, og download den. Start behandlingsskitsen for at interagere med controlleren og vise resultater. Af og til synkroniseres Arduino -skitsen ikke med behandlingsskitsen. Når dette sker, vil du se meddelelsen "Ingen opdatering" i konsolvinduet i behandlingsskitsen. Bare stop og genstart behandlingsskitsen, og tingene skal være i orden. Hvis ikke, skal du se på afsnittet Fejlfinding herunder.

Her er kommandoerne til controlleren. "Delta" er det beløb, som en parameter vil ændre, når den kommanderes. Indstil først værdien af delta, du vil bruge. Juster derefter den ønskede parameter ved hjælp af dette delta. For eksempel skal du bruge + og - til at lave delta 10. Brug derefter T (stort “T”) til at øge indstillingen af måltemperaturen med 10 grader C, eller t (små bogstaver”t”) for at reducere måltemperaturen med 10 grader. Kommandoer:

+/-: juster delta ved en faktor på ti P/p: op/ned juster p forstærkning med delta I/i: op/ned juster i forstærkning med delta D/d: op/ned juster d forstærkning med delta T/t: op/ned juster indstillet temp med delta h: skift hjælpeskærm til og fra R: nulstil værdier - gør dette første gang du kører controlleren

Når du får temperaturopdateringer, skal skitsens grafiske vindue ligne billedet. Hvis du har et stort gråt område på skærmen med nogle beskrevne kommandoer, skal du blot skrive "h" for at slette det. Når du starter for første gang, kan du blive bedt om at nulstille de oprindelige værdier. Fortsæt og gør det. Værdierne i øverste højre hjørne er de aktuelle aflæsninger og indstillinger. "Mål" er den aktuelle måltemperatur og ændres med "t" -kommandoen som beskrevet ovenfor. "Curr" er den aktuelle temperaturmåling fra sensoren. “P”, “I” og “D” er parametrene for PID -styringsalgoritmen. Brug kommandoerne "p", "i" og "d" til at ændre dem. Jeg vil diskutere dem om et øjeblik. "Pow" er strømkommandoen fra PID -controlleren til kogepladen. Det er en værdi mellem 0 (altid slukket) og 1000 (altid tændt).

Hvis du lægger din hånd under sensoren, skal du se temperaturen (Curr) læse op. Hvis du nu øger måltemperaturen, ser du effekt (Pow) -værdien stige, og output -LED'en blinker. Forøg måltemperaturen, og output -LED'en forbliver længere. Når kogezonen er tilsluttet og fungerer, vil stigning i måltemperaturen få kogepladen til at tænde. Når den aktuelle temperatur nærmer sig måltemperaturen, falder tiden til, så måltemperaturen nærmer sig med minimal overskydning. Derefter vil til tiden være lige nok til at opretholde måltemperaturen.

Sådan indstilles parametrene for PID -algoritmen. Du kan starte med de værdier, jeg bruger. P på 40, I på 0,1 og D på 100. Mit system vil udføre et 50C -trin på cirka 30 sekunder med et overskridelse på mindre end 5 grader. Hvis dit system fungerer væsentligt anderledes, vil du gerne stille det op. Tuning af en PID -controller kan være vanskelig, men artiklen, der henvises til ovenfor, forklarer, hvordan man gør det meget effektivt.

Nu er det tid til den ægte vare. Tilslut kogepladen til varmepladen AC -controller som beskrevet i ekstrem overflademontering. Sørg også for at læse alle advarslerne derinde. Placer din temperatursensor, så den er ca. 3 tommer over din kogeplade og peger direkte på den. Tænd for din Ard/Free-duino. Sørg for, at alle forbindelser er korrekte, og at din software (PID -controlleren og overvågningsprogrammet) kører korrekt. Start med måltemperaturen indstillet til 20 C. Stig derefter måltemperaturen til 40 C. Kogepladen skal tændes, og temperaturen skal stige jævnt til 40C +/- 2 C. Du kan nu prøve at øge temperaturen, mens du observerer ydelsen af dit system. Du vil bemærke, at det tager meget længere tid for tallerkenen at køle ned, end den gør for at varme den op.

Fejlfinding

Hvis Processing sketch ikke kører eller ikke opdaterer temperaturen, skal du stoppe Processing sketch og starte en seriel terminal (f.eks. Hyperterminal på Windows). Tryk på mellemrumstasten, og tryk på retur. Arduino skal reagere med den aktuelle temperaturmåling. Juster indstillingerne for baudhastighed osv., Indtil du får det ønskede svar. Når dette virker, skal behandlingsskitsen køre. Hvis du stadig har problemer, skal du sørge for, at dine pin -tildelinger stemmer overens med dine fysiske ledninger, og at du har tilsluttet strøm og jord til de relevante stifter på temperatursensoren.

Trin 4: Overflademontering

Overflademontering Lodning
Overflademontering Lodning

Ved hjælp af temperaturkontrolsystemet beskrevet i denne Instructable forbedres Extreme Surface Mount Lodning på to måder. For det første er temperaturkontrollen mere præcis og betydeligt hurtigere. Så i stedet for at have en langsom rampe fra omkring 120C til 180C over 6 minutter eller deromkring, kan vi gå hurtigt til 180C, holde i 2 ½ til 3 minutter og gå hurtigt til 220C til 240C i cirka et minut. Vi skal stadig se efter det punkt, hvor loddet flyder og slukker for strømmen, eller bare hurtigt sænke måltemperaturen. Da temperaturen falder meget langsomt, glider jeg normalt mine kredsløb fra kogepladen, så snart temperaturen er afkølet til under 210C. Læg dem på et stykke perf bord eller træ, ikke metal. Metallet kan få dem til at afkøle for hurtigt. Bemærk også, at du muligvis skal hæve måltemperaturen over 250C (det maksimale, sensoren vil aflæse) for at få pladen varm nok i visse områder. Pladen når ikke en enkelt temperatur over hele overfladen, men vil være køligere i visse områder end andre. Du lærer dette ved at eksperimentere.

Det andet forbedringsområde er en reduktion i tiden mellem loddekredsløb. Med open loop -systemet måtte jeg vente på, at kogepladen var afkølet til stuetemperatur (ca. 20C) for at starte en ny loddecyklus. Hvis jeg ikke gjorde dette, ville temperaturcyklussen ikke være korrekt (ændring af indledende betingelser). Nu mangler jeg kun at vente på en stabil temperatur omkring 100C, og jeg kan starte en ny cyklus.

Den temperaturcyklus, jeg nu bruger, er underforstået ovenfor, men her er den præcis. Start ved 100C. Læg dine brædder på kogepladen i to til tre minutter for at varme op - længere med store komponenter. Indstil måltemperaturen til 180C. Denne temperatur nås på mindre end et minut. Hold her i 2 ½ minut. Indstil dit mål til 250C. Så snart alt loddet flyder, sænkes måltemperaturen til ca. 100C. Temperaturen på din tallerken forbliver høj. Så snart den falder til 210C, eller der går 1 minut, skal du glide dine brædder ud af kogepladen på en køleplatform af perfboard eller træ. Lodning er udført.

Hvis du ønsker at bruge en anden temperaturprofil, bør du ikke have problemer med at opnå det med dette kontrolsystem.

Du vil måske eksperimentere med placeringen af temperatursensoren over din kogeplade. Jeg fandt ud af, at ikke alle områder af kogepladen når den samme temperatur på samme tid. Så afhængigt af hvor du placerer din sensor, kan den faktiske tid og temperatur, der kræves for at få loddetrømmen, at variere. Når du har udarbejdet en opskrift, skal du bruge den samme positionering af sensoren til gentagelige resultater.

God lodning!

Anbefalede: