Inhoudsopgave:
- Stap 1: De IR-sensor wijzigen
- Stap 2: Software voor besturing
- Stap 3: Alles aansluiten
- Stap 4: Solderen op het oppervlak
Video: De lus sluiten bij solderen op oppervlaktemontage: 4 stappen
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:20
Temperatuur lijkt het gemakkelijkste ter wereld om te controleren. Zet het fornuis aan en stel de gewenste temperatuur in. Zet 's ochtends de oven aan en stel de thermostaat in. Pas het warme en koude water aan om de douche precies goed te maken. Eenvoudig! Maar wat als u de temperatuur wilt regelen buiten deze alledaagse toepassingen? Als je temperaturen buiten het normale bereik wilt, of een stabiele temperatuur binnen een smal bereik wilt, sta je er meestal alleen voor.
In mijn geval wilde ik de temperatuur regelen van een hete plaat die wordt gebruikt voor solderen op het oppervlak. Aanvankelijk gebruikte ik pulsbreedtemodulatie om stabiele temperaturen te bieden en experimenteel bepaalde instellingen om het vereiste temperatuurprofiel te creëren. Je kunt er alles over lezen in deze Instructable. Dit systeem werkt en de temperatuurregeling op deze manier is allemaal goed en wel, maar het heeft tekortkomingen.
tekortkomingen:
- Werkt alleen voor mijn specifieke kookplaat. Andere zijn vergelijkbaar, maar niet identiek en er zijn experimenten nodig om de instellingen en tijden te bepalen die nodig zijn om het vereiste profiel te produceren.
- Zelfde situatie als ik een ander profiel of andere temperatuur wil.
- Het soldeerproces duurt lang omdat stabiele temperaturen langzaam moeten worden benaderd.
In het ideale geval zouden we gewoon een temperatuur-tijdprofiel kunnen specificeren, op een knop drukken en de controller zou ervoor zorgen dat de kookplaat werkt zoals geprogrammeerd. We weten dat dit mogelijk is omdat er veel industriële processen zijn die precies dit soort controle gebruiken. De vraag is of dit thuis gemakkelijk en goedkoop kan worden gedaan?
Zoals je misschien al geraden had, aangezien ik dit Instructable schrijf, is het antwoord ja! Deze Instructable laat je zien hoe je je eigen industriële temperatuurregelaar kunt bouwen. Ik zal met name gericht zijn op solderen op het oppervlak, maar elk proces dat een nauwkeurig tijdtemperatuurprofiel vereist, kan dit systeem gebruiken.
Opmerking: als ik de naam "Arduino" gebruik, bedoel ik niet alleen de (niet helemaal) auteursrechtelijk beschermde Arduino zelf, maar ook de vele versies in het publieke domein die gezamenlijk bekend staan als "Freeduino". In sommige gevallen gebruik ik de term "Ard/Free-duino", maar de voorwaarden moeten als uitwisselbaar worden beschouwd voor de doeleinden van deze Instructable.
Het temperatuurregelingsschema dat wordt gebruikt in de Extreme Surface Mount Soldering Instructable staat bekend als open-lusregeling. Dat wil zeggen, een waarde die in het verleden de gewenste temperatuur heeft opgeleverd, zal naar verwachting dezelfde temperatuur produceren wanneer deze opnieuw wordt gebruikt. Vaak is dit waar en levert het het gewenste resultaat op. Maar als de omstandigheden net iets anders zijn, bijvoorbeeld dat de garage waar we werken een stuk koeler of warmer is, krijgt u mogelijk niet het verwachte resultaat.
Als we een sensor hebben die de temperatuur kan aflezen en terugmelden naar een controller, dan hebben we closed-loop regeling. De controller kan een beginwaarde instellen om de temperatuur te verhogen, naar de temperatuur kijken naarmate de tijd verstrijkt en de instelling aanpassen om de temperatuur hoger of lager te laten gaan totdat de gewenste temperatuur is bereikt.
Onze aanpak is om de op AVRTiny2313 gebaseerde PWM-controller te vervangen door een krachtigere op ATMega gebaseerde controller. Het programmeren gebeurt in de Arduino-omgeving. We gebruiken een pc (Linux-Mac-Windows) met Processing om de resultaten weer te geven en de controller aan te passen.
Voor de sensor gebruiken we een infraroodtemperatuursensor van Harbor Freight. De IR-sensor wordt aangepast om de temperatuur uit te voeren als een seriële gegevensstroom die de controller kan lezen. We gebruiken een Ard/Free-duino als controller, met een pc (Mac – Linux – Windows) voor invoer naar de controller. Als we allemaal klaar zijn, ziet het systeem eruit zoals op de foto. (Misschien heb je minder externe circuits op je breadboard. Dat is OK.)
Stap 1: De IR-sensor wijzigen
Veel dank aan mijn slimme vriend, Scott Dixon, voor zijn zorgvuldige speurwerk bij het uitzoeken hoe dit instrument werkt en hoe het algemeen bruikbaar te maken met een controller door de seriële interface bloot te leggen.
Het apparaat waarmee we beginnen is Harbor Freight Part Number: 93984-5VGA. Kost ongeveer $ 25. Doe geen moeite om de garantie te kopen.:)} Hier is de link. Figuren 1 en 2 tonen voor- en achteraanzichten. De pijlen op afbeelding 2 geven aan waar de schroeven zitten die de behuizing bij elkaar houden. Afbeelding 3 toont de binnenkant van de behuizing wanneer de schroeven worden verwijderd en de behuizing wordt geopend. De laserpointermodule kan waarschijnlijk worden verwijderd en voor andere projecten worden gebruikt, hoewel ik dit nog niet heb gedaan. De pijlen wijzen naar de schroeven die moeten worden verwijderd als u het bord eruit wilt halen om eraan te solderen (schroeven verwijderd in deze afbeelding). Ook aangegeven is het gebied waar een uitsnijding moet worden gemaakt zodat uw bedrading de behuizing kan verlaten. Zie ook figuur 5. Maak de uitsparing terwijl de printplaat is verwijderd, of in ieder geval voordat u de draden soldeert. Zo is het makkelijker.;)} Figuur 4 laat zien waar de draden gesoldeerd worden. Noteer de letter van elke aansluiting, zodat u weet welke draad van welke is wanneer u de behuizing sluit. Afbeelding 5 toont de draden die op hun plaats zijn gesoldeerd en door de uitsparing zijn geleid. U kunt nu de koffer weer in elkaar zetten en het instrument zou moeten werken zoals het voor uw operatie deed. Let op de connector op de draden. Ik gebruik langere draden om daadwerkelijk verbinding te maken met mijn controller. Als u een kleine draad gebruikt, een kleine connector, en de draden kort houdt, kunt u desgewenst alles terug in de koffer stoppen en het instrument ziet er ongewijzigd uit. Scott heeft ook de software gemaakt om dit apparaat te koppelen. Hij heeft dit document gebruikt als je de details wilt. Dat is het! Je hebt nu een IR-temperatuursensor die werkt van -33 tot 250 C.
Stap 2: Software voor besturing
Hoe handig ook, de IR-temperatuursensor is slechts een onderdeel van het systeem. Om de temperatuur te regelen, zijn drie items vereist: een warmtebron, een temperatuursensor en een controller die de sensor kan lezen en de warmtebron kan bedienen. In ons geval is de kookplaat de warmtebron, de IR-temperatuursensor (zoals gewijzigd in de laatste stap) is onze sensor en een Ard/Free-duino met geschikte software is de controller. Alle software voor deze Instructable kan worden gedownload als een Arduino-pakket en als een verwerkingspakket.
Download het bestand IR_PID_Ard.zip. Pak het uit in uw Arduino-map (meestal Mijn documenten/Arduino). Download het bestand PID_Plotter.zip. Pak het uit in uw verwerkingsmap (meestal Mijn documenten/verwerking). De bestanden zijn nu beschikbaar in de juiste schetsboeken.
De software die we zullen gebruiken, is oorspronkelijk geschreven door Tim Hirzel. Het wordt aangepast door de interface toe te voegen aan de IR-sensor (geleverd door Scott Dixon). De software implementeert een besturingsalgoritme dat bekend staat als het PID-algoritme. PID staat voor Proportional – Integral – Derivative en is het standaardalgoritme dat wordt gebruikt voor industriële temperatuurregeling. Dit algoritme wordt beschreven in een uitstekend artikel van Tim Wescott waarop Tim Hirzel zijn software baseerde. Lees het artikel hier.
Om het algoritme af te stemmen (lees hierover in het genoemde artikel) en om de gewenste temperatuurinstellingen te wijzigen, gebruiken we een Processing sketch, ook ontwikkeld door Tim Hirzel. Het werd ontwikkeld voor het branden van koffiebonen (een andere toepassing van temperatuurregeling), en werd de Bare Bones Coffee Controller of BBCC genoemd. Naam terzijde, het werkt geweldig voor solderen op het oppervlak. U kunt de originele versie hier downloaden.
De software wijzigen
In het volgende ga ik ervan uit dat je bekend bent met Arduino en Processing. Als je dat niet bent, moet je de tutorials doornemen totdat de dingen logisch worden. Zorg ervoor dat u opmerkingen op deze Instructable plaatst en ik zal proberen te helpen.
De PID-controller moet worden aangepast voor uw Arduino/Freeduino. De kloklijn van de IR-sensor moet worden aangesloten op een onderbrekingspin. Op een Arduino kan dit 1 of 0 zijn. Op verschillende soorten Freeduino's kun je alle beschikbare interrupts gebruiken. Sluit de datalijn van de sensor aan op een andere pin in de buurt (zoals D0 of D1 of een andere pin naar keuze). De stuurleiding naar de kookplaat kan van elke digitale pin komen. Op mijn specifieke Freeduino-kloon (beschrijf hier), gebruikte ik D1 en de bijbehorende interrupt (1) voor klok, D0 voor gegevens en B4 voor de stuurleiding naar de kookplaat.
Nadat u de software hebt gedownload, start u uw Arduino-omgeving en opent u IR_PID vanuit het menu-item Bestand/Schetsboek. Op het tabblad pwm kunt u de HEAT_RELAY_PIN definiëren die geschikt is voor uw Arduino- of Freeduino-variant. Doe op het tabblad Tijdelijk hetzelfde voor de IR_CLK PIN, IR_DATA PIN en IR_INT. U moet klaar zijn om te compileren en te downloaden.
Start op dezelfde manier uw Processing-omgeving en open de PID_Plotter-schets. Stel de BAUDRATE in op de juiste waarde en zorg ervoor dat de index die wordt gebruikt in Serial.list()[1] op de juiste waarde voor uw systeem staat (mijn poort is index 1).
Stap 3: Alles aansluiten
Het hete plaat AC-regelsysteem wordt beschreven in de Extreme Surface Mount Soldering Instructable die al is genoemd, of u kunt uw eigen SSR (solid-state relais) kopen. Zorg ervoor dat het de hete plaatbelasting met voldoende marge aankan, zeg een vermogen van 20 tot 40 watt, aangezien de tests door de Chinezen te wensen overlaten. Als je de hete plaat AC-controller van mijn Instructable gebruikt, voer dan een jumper uit van de weerstand op de besturingsingang naar aarde op de Ard / Free-duino en een jumper van de besturingsuitgang (B4, of wat je ook kiest) naar het besturingssignaal Invoer. Zie de foto van de regelaar. De gele jumper is de stuursignaalingang en de groene jumper gaat naar Ground. Ik gebruik graag een knipperlicht (led met een weerstand naar aarde) op de uitgangspen, zodat ik weet wanneer het aan is. Sluit uw jumper aan tussen de led en de poort zoals afgebeeld. Raadpleeg het Teensy++ Aansluitschema.
Monteer nu een steun om de IR-temperatuursensor boven uw kookplaat te houden. De foto laat zien wat ik heb gedaan. Eenvoudig maar stevig is de regel. Houd alles wat brandbaar is uit de buurt van de kookplaat; de sensor is van plastic en lijkt prima 3 inch boven het oppervlak van de plaat te zijn. Leid draden van de connector op uw sensor naar de juiste pinnen op uw Ard/Free-duino. Aansluitingen voor de IR-sensor worden getoond in het Teensy++ Aansluitschema. Pas deze naar behoefte aan voor uw Ard/Free-duino.
Belangrijke veiligheidsopmerking: de IR-sensor heeft een led-aanwijzer die helpt bij het richten. Als je katten zoals de mijne hebt, jagen ze graag op de led-aanwijzer. Bedek de led dus met wat ondoorzichtige tape om te voorkomen dat je katten op de kookplaat springen als je hem gebruikt.
Voordat u de AC-controller voor de kookplaat op 120V aansluit, kunt u als volgt het systeem testen en de initiële doelwaarden voor de temperatuur instellen. Ik stel een doeltemperatuur van 20 C voor, zodat de verwarming niet meteen begint. Deze waarden worden opgeslagen in EEPROM en de volgende keer gebruikt, dus zorg ervoor dat u altijd een lage waarde opslaat als doeltemperatuur wanneer u klaar bent met een soldeersessie. Ik vind het een goed idee om de temperatuurregelaar eerst te starten met de kookplaat losgekoppeld. Zorg ervoor dat alles werkt voordat u de stekker in het stopcontact steekt.
Sluit je seriële poort aan op je Arduino en zet hem aan. Compileer de Arduino-schets en download deze. Start de Processing-schets om te communiceren met de controller en de resultaten weer te geven. Af en toe zal de Arduino-schets niet synchroniseren met de Processing-schets. Wanneer dit gebeurt, ziet u het bericht "No Update" in het consolevenster van de Processing-schets. Stop gewoon en start de Processing-schets opnieuw en alles zou in orde moeten zijn. Als dat niet het geval is, kijk dan eens in het gedeelte Problemen oplossen hieronder.
Hier zijn de commando's voor de controller. "Delta" is de hoeveelheid die een parameter zal veranderen wanneer het wordt opgedragen. Stel eerst de waarde van delta in die u wilt gebruiken. Pas vervolgens de gewenste parameter aan met behulp van die delta. Gebruik bijvoorbeeld de + en – om delta 10 te maken. Gebruik vervolgens T (hoofdletter "T") om de doeltemperatuurinstelling met 10 graden C te verhogen, of t (kleine letter "t") om de doeltemperatuur met 10 graden te verlagen. Commando's:
+/-: delta aanpassen met een factor tien P/p: omhoog/omlaag aanpassen p-versterking met delta I/i: omhoog/omlaag aanpassen i-versterking met delta D/d: omhoog/omlaag aanpassen d-versterking met delta T/t: omhoog/omlaag stel de ingestelde temperatuur in met delta h: schakel het helpscherm in en uit R: reset waarden – doe dit de eerste keer dat u de controller gebruikt
Zodra u temperatuurupdates ontvangt, zou het grafische venster van de schets eruit moeten zien als de afbeelding. Als u een groot grijs gebied op het scherm heeft met enkele beschreven opdrachten, typt u gewoon "h" om het te wissen. Wanneer u voor de eerste keer start, wordt u mogelijk gevraagd om de beginwaarden opnieuw in te stellen. Ga je gang en doe dat. De waarden in de rechterbovenhoek zijn de huidige metingen en instellingen. "Doel" is de huidige doeltemperatuur en wordt gewijzigd door het "t"-commando zoals hierboven beschreven. "Curr" is de huidige temperatuurmeting van de sensor. "P", "I" en "D" zijn de parameters voor het PID-regelalgoritme. Gebruik de opdrachten "p", "i" en "d" om ze te wijzigen. Ik zal ze zo bespreken. “Pow” is het vermogenscommando van de PID-regelaar naar de kookplaat. Het is een waarde tussen 0 (altijd uit) en 1000 (altijd aan).
Als u uw hand onder de sensor houdt, zou u de temperatuur (Curr) moeten zien springen. Als u nu de doeltemperatuur verhoogt, ziet u de vermogenswaarde (Pow) toenemen en gaat de output-led knipperen. Verhoog de doeltemperatuur en de output-led blijft langer branden. Wanneer de kookplaat is aangesloten en werkt, zal het verhogen van de doeltemperatuur ervoor zorgen dat de kookplaat wordt ingeschakeld. Naarmate de huidige temperatuur de doeltemperatuur nadert, zal de aan-tijd afnemen zodat de doeltemperatuur met minimale overshoot wordt benaderd. Dan is de aan-tijd net voldoende om de gewenste temperatuur te handhaven.
Hier leest u hoe u de parameters voor het PID-algoritme instelt. Je kunt beginnen met de waarden die ik gebruik. P van 40, I van 0,1 en D van 100. Mijn systeem zal een stap van 50C doen in ongeveer 30 seconden met een overshoot van minder dan 5 graden. Als uw systeem aanzienlijk anders presteert, wilt u het afstemmen. Het afstemmen van een PID-controller kan lastig zijn, maar in het artikel waarnaar hierboven wordt verwezen, wordt uitgelegd hoe u dit zeer effectief kunt doen.
Nu is het tijd voor het echte werk. Steek de hete plaat in de hete plaat AC-controller zoals beschreven in Extreme Surface Mount Solderen. Lees ook alle waarschuwingen daarin. Plaats uw temperatuursensor zo dat deze ongeveer 3 inch boven uw kookplaat is en er direct op wijst. Zet je Ard/Free-duino aan. Zorg ervoor dat alle verbindingen correct zijn en dat uw software (de PID-controller en het monitoringprogramma) correct werkt. Begin met de doeltemperatuur ingesteld op 20 C. Verhoog vervolgens de doeltemperatuur tot 40 C. De kookplaat moet aangaan en de temperatuur moet geleidelijk oplopen tot 40C +/- 2 C. U kunt nu proberen de temperatuur te verhogen terwijl u de prestaties observeert van uw systeem. Je zult merken dat het veel langer duurt voordat de plaat is afgekoeld dan om hem op te warmen.
Probleemoplossen
Als de Processing-schets niet wordt uitgevoerd of de temperatuur niet wordt bijgewerkt, stop dan de Processing-schets en start een seriële terminal (Hyperterminal op Windows bijvoorbeeld). Tik op de spatiebalk en druk op Return. De Arduino zou moeten reageren met de huidige temperatuurmeting. Pas de instellingen van de baudrate, enz. aan totdat u het gewenste antwoord krijgt. Zodra dit werkt, zou de Processing-schets moeten worden uitgevoerd. Als je nog steeds problemen hebt, zorg er dan voor dat je pintoewijzingen overeenkomen met je fysieke bedrading en dat je de voeding en aarde hebt aangesloten op de juiste pinnen van de temperatuursensor.
Stap 4: Solderen op het oppervlak
Het gebruik van het temperatuurregelsysteem dat in deze Instructable wordt beschreven, verbetert Extreme Surface Mount Solderen op twee manieren. Ten eerste is de temperatuurregeling nauwkeuriger en aanzienlijk sneller. Dus in plaats van een langzame helling van ongeveer 120C tot 180C gedurende 6 minuten of zo, kunnen we snel naar 180C gaan, 2 ½ tot 3 minuten vasthouden en snel ongeveer een minuut naar 220C tot 240C gaan. We moeten nog steeds uitkijken naar het punt waarop het soldeer vloeit en de stroom uitschakelen, of gewoon snel de doeltemperatuur verlagen. Omdat de temperatuur heel langzaam daalt, schuif ik mijn circuits meestal van de kookplaat zodra de temperatuur onder de 210C is gedaald. Leg ze op een stuk perforatiebord of hout, niet op metaal. Door het metaal kunnen ze te snel afkoelen. Houd er ook rekening mee dat u de doeltemperatuur mogelijk moet verhogen tot boven 250C (het maximum dat de sensor zal lezen) om de plaat in bepaalde gebieden warm genoeg te krijgen. De plaat zal geen enkele temperatuur bereiken over het hele oppervlak, maar zal in bepaalde gebieden koeler zijn dan in andere. Dit leer je door te experimenteren.
Het tweede verbeterpunt is een verkorting van de tijd tussen soldeercycli. Met het open-lussysteem moest ik wachten tot de hete plaat was afgekoeld tot kamertemperatuur (ongeveer 20C) om een nieuwe soldeercyclus te starten. Als ik dit niet deed, zou de temperatuurcyclus niet correct zijn (verandering van beginvoorwaarden). Nu hoef ik alleen nog maar te wachten op een stabiele temperatuur rond de 100C en kan ik aan een nieuwe cyclus beginnen.
De temperatuurcyclus die ik nu gebruik, wordt hierboven geïmpliceerd, maar hier is het precies. Begin bij 100C. Leg je planken twee tot drie minuten op de hete plaat om op te warmen - langer met grote componenten. Stel de doeltemperatuur in op 180C. Deze temperatuur wordt in minder dan een minuut bereikt. Houd hier 2 ½ minuut vast. Stel uw doel in op 250C. Zodra al het soldeer vloeit, verlaagt u de doeltemperatuur tot ongeveer 100C. De temperatuur van je bord blijft hoog. Zodra het daalt tot 210C, of de tijd van 1 minuut verstrijkt, schuift u uw planken van de kookplaat op een koelplatform van perfboard of hout. Solderen is gedaan.
Als u een ander temperatuurprofiel wilt gebruiken, kunt u dit met dit regelsysteem probleemloos realiseren.
Experimenteer eventueel met de positie van de temperatuursensor boven je kookplaat. Ik ontdekte dat niet alle delen van de kookplaat tegelijkertijd dezelfde temperatuur bereiken. Dus afhankelijk van waar u uw sensor plaatst, kunnen de werkelijke tijd en temperatuur die nodig zijn om het soldeer te laten vloeien variëren. Zodra u een recept hebt uitgewerkt, gebruikt u dezelfde positionering van de sensor voor herhaalbare resultaten.
Veel plezier met solderen!
Aanbevolen:
Componenten met doorlopende gaten solderen - Solderen Basics: 8 stappen (met afbeeldingen)
Componenten met doorlopende gaten solderen | Basisprincipes van solderen: in deze Instructable bespreek ik enkele basisprincipes over het solderen van doorlopende componenten op printplaten. Ik ga ervan uit dat je de eerste 2 Instructables voor mijn Soldering Basics-serie al hebt uitgecheckt. Als je mijn In
Solderen van draden aan draden - Basisprincipes van solderen: 11 stappen
Solderen van draden aan draden | Basisprincipes van solderen: voor deze Instructable bespreek ik veelvoorkomende manieren om draden aan andere draden te solderen. Ik ga ervan uit dat je de eerste 2 Instructables voor mijn Soldering Basics-serie al hebt uitgecheckt. Als je mijn Instructables over het gebruik van
Hoe Raspberry Pi 4 op een laptop aan te sluiten: 7 stappen
Hoe Raspberry Pi 4 op een laptop aan te sluiten: Hallo, na dagenlang geprobeerd te hebben om een Pi op een laptop aan te sluiten omdat ik geen kleine monitor had, kwam ik met deze oplossing. Hopelijk bespaart dit u problemen en werkt het voor u. Dit is een zeer eenvoudige handleiding voor het aansluiten van
Hoe u uw eigen WIFI-gateway kunt maken om uw Arduino op een IP-netwerk aan te sluiten? 11 stappen (met afbeeldingen)
Hoe maak je je eigen wifi-gateway om je Arduino met een IP-netwerk te verbinden?: Zoals zoveel mensen denk je dat Arduino een zeer goede oplossing is voor domotica en robotica! Maar op het gebied van communicatie komen Arduino's gewoon met seriële verbindingen. Ik werk aan een robot die permanent verbonden moet zijn met een server die ar
Solderen - de geheimen van goed solderen: 4 stappen
Hoe te solderen - de geheimen van goed solderen: Ik heb veel adviezen gezien aan mensen over het solderen van elektronische componenten, sommige goed, andere niet zo goed. Ik heb mensen allerlei soorten rotzooi zien gebruiken en beweren dat het het werk doet, soldeerbouten van $ 2 en andere gekke dingen. Ja, je kunt sol smelten