Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Productieproces

Portenta- en thermokoppelsensor (met MAX6675)

Componenten en benodigdheden

Arduino Portenta H7
× 1
Testaccessoire, thermokoppel en adapter
× 1
SparkFun Thermokoppel Breakout - MAX31855K
× 1

Apps en online services

CircuitMaker van Altium Circuit Maker

Over dit project

hier ben ik weer met een nieuw artikel dat spreekt over de geweldige ervaring die ik heb gekregen via het Portenta Throne-bord dat ik de HD-connectoren van Arduino Portenta moet verkennen en deze keer zal ik een beetje spelen met enkele sensoren, met name met een thermokoppelsensor die is een veelgebruikte sensor in industriële toepassingen.

Over het Throne-bord, je kunt mijn vorige bericht bekijken met betrekking tot de details van het maken via deze link

Wat leer je van deze instructable:

  • Waar is een thermokoppel van gemaakt en hoe werkt het.
  • De benodigde chips om te communiceren met een industriële sensor via een op ttl gebaseerde MCU.
  • Interpreteer de sensorgegevens en geef deze weer via een willekeurige seriële monitor.

Genoeg gepraat, laten we erdoorheen komen.

Benodigdheden

Arduino Portenta

Thermokoppelsensor

Portenta Troonbord

Hoe thermokoppelsensor werkt

Laten we eerst eens kijken hoe thermokoppelsensoren werken, zo'n sensor is bedoeld om de temperatuur te meten, het is in feite gemaakt van twee verschillende soorten metalen, aan één uiteinde samengevoegd zodra het verbonden uiteinde is opgewarmd, er is een continue spanning die in het thermo-elektrische circuit stroomt. Deze spanningswaarde verandert relatief aan de temperatuurverandering.

Commerciële thermokoppels zijn beschikbaar voor een aantal hoge prijzen en het is in de meeste gevallen uitwisselbaar, daarom wordt het geleverd met een standaard connector, deze sensoren kunnen een breed scala aan temperaturen meten. In tegenstelling tot de meeste andere methoden voor temperatuurmeting, zijn thermokoppels zelfaangedreven en vereisen ze geen externe vorm van excitatie. De belangrijkste beperking bij thermokoppels is hun nauwkeurigheid; systeemfouten van minder dan één graad Celsius (°C) kunnen moeilijk te bereiken zijn.

Meer details over thermokoppelsensoren hier

Ik heb in de bovenstaande afbeeldingen de weergave van de digitale microscoopcamera van het thermokoppel bijgevoegd dat ik zal gebruiken:)

Vereisten voor sensorhardware

Welke Portenta-pinnen zijn nu geschikt om de sensormaatregelen te nemen!

Om de spanningssignalen te meten die door onze sensor worden verzonden, moeten we deze eerst versterken en vervolgens converteren naar digitale gegevens en vervolgens geïnterpreteerd door de MCU! we kunnen het allemaal voor elkaar krijgen via de MAX6675 circuit van Maxim geïntegreerd;

Ik herinner je eraan dat ik twee MAX6675 . heb geplaatst IC's in het bordschema van mijn troonbord dat ik heb gemaakt om de HD-connectoren van Arduino Portenta te verkennen.

Gezien de datasheet van het circuit, zegt het dat het IC presteert om het signaal van een type-K thermokoppelsensor te digitaliseren, de chip heeft een vereenvoudigde SPI-communicatiepoort en is ontworpen om te werken in combinatie met een externe microcontroller, het heeft een goede conversieresolutie en een meetbereik bij hoge temperaturen dat 1024°C kan bereiken, waardoor het geschikt is voor veel industriële toepassingen.

U kunt ook de juiste schematische opstelling voor uw circuitlay-out vinden.

Terug naar ons troonschema

Een opmerking voordat ik verder ging, gebruikte ik Altium Designer om het Throne-bordschema en de PCB te maken en hier komen we op terug om de aangesloten pinnen te controleren die we gebruikten om de SPI-communicatie tussen Portenta en MAX6675 tot stand te brengen.

aangezien Portenta 6 SPI-poorten heeft, heb ik ervoor gekozen om de eerste en tweede poorten te gebruiken voor mijn MAX IC's

De juiste pinnen voor de eerste poort bevinden zich in de tweede HD-connector, met name via de pinnen 38, 40 en 42. Ik heb zojuist de NetLabel in mijn schema gebruikt om de lay-out van het schema overzichtelijk te houden, zorg ervoor dat u hetzelfde label gebruikt voor hetzelfde net.

Ik sleepte de tweede MAX IC naar het schema waar het zal worden aangesloten op de tweede SPI-poort in de eerste HD-connector via de pinnen 33, 59, 61

Vergeet niet de door de datasheet aanbevolen setup te volgen die de noodzaak van een 0.1uF ontkoppelingscondensator in de voedingslijn van het MAX-circuit laat zien, ik liet ook twee schroefkopterminals vallen waar ik de thermokoppelsensor inplug

Probeer nu in de PCB-lay-out de ontkoppelcondensatoren zoveel mogelijk dichter bij de stroomsporen te houden.

Het samenstellen van zo'n componentenpakket is niet zo moeilijk en je kunt het gewoon maken met een soldeerbout en wat vloeimiddel

Sensor verbindingspennen

Houd er rekening mee dat de sensor een gedefinieerde polariteit heeft dus volg gewoon de instructies van de fabrikant om de plus- en min-draden van uw sensor te definiëren.

Ik heb de sensorkop op mijn montagekookplaat geplakt om de temperatuurstijging te meten;

Software en testen

Aan de softwarekant kun je zien dat ik de Max6675-bibliotheek van Adafuit heb gebruikt.

Het enige dat nodig is, zijn alleen de drie pinnen die we hebben gebruikt voor de SPI-communicatie. Deze instantie zorgt ervoor dat Portenta de MAX6675-gegevens interpreteert en weergeeft via de seriële monitor.

Ik heb de code geüpload naar mijn Portenta en vervolgens de seriële monitor geopend en hier gaan we, zoals je kunt zien in de bovenstaande afbeelding, de uitgelezen gegevens voor de temperatuurwaarden die blijven stijgen zolang de temperatuur van de kookplaat stijgt, wat bevestigt dat de SPI communicatie is met succes bereikt en de MAX IC is onderzocht door onze Portenta.

Dat was het voor deze Porject-jongens, een laatste ding, zorg ervoor dat je elke dag met elektronica bezig bent, het was Chris, tot de volgende keer.

Code

  • Naamloos bestand
Naamloos bestandArduino
// dit voorbeeld is publiek domein. veel plezier!// www.ladyada.net/learn/sensors/thermocouple#include "max6675.h"int thermoDO =10;int thermoCS =8;int thermoCLK =9;MAX6675 thermokoppel(thermoCLK, thermoCS, thermoDO);//int vccPin =3;// int gndPin =2; void setup () { pinMode (PC_7, OUTPUT); digitalWrite(PC_7, HOOG); vertraging (500); digitalWrite (PC_7, LAAG); vertraging (500); Serieel.begin(9600); // gebruik Arduino-pinnen // pinMode (vccPin, OUTPUT); digitalWrite (vccPin, HOOG);// pinMode (gndPin, OUTPUT); digitalWrite(gndPin, LAAG); Serial.println ("MAX6675-test"); // wacht tot MAX-chip de vertraging (500) stabiliseert;}void loop () { // basisuitlezingstest, druk gewoon de huidige temp af Serial.print ("C ="); Serial.println(thermokoppel.readCelsius()); Serieel.print("F ="); Serial.println(thermokoppel.readFahrenheit()); if(thermokoppel.readCelsius()>30) digitalWrite(PC_7, HIGH); anders digitalWrite (PC_7, LAAG); vertraging(1000);}

Schema's


Productieproces

  1. Meet temperaturen met een 1-draads DS18B20-sensor en Raspberry Pi
  2. Python- en Raspberry Pi-temperatuursensor
  3. Lijnvolgsensor met RPi
  4. Milieusensor-API met een RPi
  5. Raspberry Pi temperatuur- en lichtsensor
  6. Raspberry Pi-sensor en actuatorbediening
  7. Bouw je eerste IOT met een Raspberry Pi, DHT11-sensor en Thingspeak.
  8. Aerocultuur met Raspberry Pi en vochtigheidssensor
  9. Een vochtigheidssensor controleren en kalibreren
  10. Raspberry Pi-huisbeveiligingssysteem met camera en PIR-sensor
  11. Windows 10 IoT Core en SHT15