Sida loo isticmaalo dareemaha heerkulka ee MAX6675 K-Type ee Arduino
Hordhac
Cabbirka heerkulka si sax ah waa shuruud asaasi ah oo ku jirta mashaariicda elektaroonigga ah ee aan tirin karin, laga bilaabo dhisidda foornada reflow ee PCB soldering ilaa la socodka heerkulka hotend-ka 3D printer-ka ama sigaar-cabbaha BBQ-ga. Iyadoo thermistors-ka caadiga ah iyo dareemayaasha dhijitaalka ah sida DS18B20 ay si fiican u shaqeeyaan heerkulka dhexdhexaadka ah, waxay ku guuldareystaan marka waxyaabuhu aad u kululaadaan. Halkan waxaa ka soo gasha K-type thermocouple. Waa dareeme adag, oo qiimo jaban karo oo awood u leh inuu cabbiro heerkulka aad u sarreeya, laakiin wuxuu u baahan yahay chip interface gaar ah si uu u turjumo signal-kiisa yar ee voltage-ka ee qiimaha dhijitaalka ah ee la akhriyi karo.
Hagahan wuxuu muujinayaa sida loo isticmaalo MAX6675 breakout board oo leh K-type thermocouple sensor iyo Arduino si loo akhriyo loona muujiyo heerkulka Celsius iyo Fahrenheit labadaba kormeerka serial-ka (fiidiyowga 00:00). MAX6675 module wuxuu kuu qabtaa habaynta signal-ka adag iyo magdhawga qabowga-junction-ka, isagoo soo saaraya xog dhijitaal ah oo nadiif ah iyada oo loo marayo borotokoolka SPI. Qalabkani wuxuu ku habboon yahay mashaariicda u baahan dareenka heerkulka sare, sida:
- La socodka heerkulka hotend-ka ama sariirta kulul ee 3D printer-ka.
- Dhisidda heerkulbeeg dhijitaal ah oo loogu talagalay BBQ grill ama foornada jikada.
- Abuurista kontorool heerkulka foornada reflow DIY ama xarunta soldering-ka.
- Cabbirka heerkulka gaaska qiiqa mashaariicda baabuurta ama robotics-ka.
Qaybaha Qalabka
Si aad ula socotid casharran, waxaad u baahan doontaa qaybaha soo socda. Xidhiidhku waa toos, koodhku wuxuu la socdaa dhammaan noocyada Arduino board-ka (fiidiyowga 00:47).
- Arduino board (Uno, Mega, Nano, iwm.)
- MAX6675 module (breakout board)
- K-type thermocouple sensor (qaab kasta oo probe ah)
- Jumper wires
MAX6675 module-ka laftiisu waa mid aad u yar. Sida lagu muujiyey fiidiyowga, cabbirkiisu waa 32.1mm dherer, 15.6mm ballac, iyo 16.3mm qoto (fiidiyowga 02:35). Module-ku wuxuu leeyahay terminal block yar oo lagu xiro thermocouple-ka iyo saf biino ah oo loogu talagalay koronto iyo isgaarsiinta SPI. K-type thermocouple-ku wuxuu ku xidhmaa module-ka si sax ah oo leh polarity; fiilada cas (positive) waxay tagtaa terminal-ka '+' iyo fiilada jaalaha ah (negative) terminal-ka '-' (fiidiyowga 01:27).
Qeexitaannada Farsamada
Ka hor inta aynaan gelin xidhiidhka, waxaa faa'iido leh in la fahmo awoodaha MAX6675 chip-ka. Sida ku cad xogta Maxim Integrated, module-ku wuxuu cabbiri karaa heerkul ballaadhan, taasoo ka dhigaysa mid ku habboon codsiyada warshadaha iyo hiwaayadda labadaba (fiidiyowga 01:44).
- Xadka Cabbirka: 0°C ilaa +1024°C
- Xallinta: 12-bit (0.25°C)
- Isgaarsiinta: SPI (Serial Peripheral Interface)
- Voltage-ga Shaqada: 3.0V ilaa 5.5V
Hagaha Xidhiidhka
Xidhiidhka MAX6675 waa mid fudud, wuxuu u baahan yahay oo kaliya xidhiidh koronto iyo saddex biino oo dhijitaal ah oo loogu talagalay isgaarsiinta SPI. Tusaalahan, waxaan isticmaali doonaa biinada Arduino 4, 5, iyo 6 ee khadadka xogta (fiidiyowga 03:28). Xidhiidhada waa kuwan soo socda:
- VCC (Fiilada Orange): Waxay ku xidhantahay biinka 5V ee Arduino-ga (fiidiyowga 02:56).
- GND (Fiilada Jaalaha ah): Waxay ku xidhantahay biinka GND ee Arduino-ga (fiidiyowga 02:51).
- SO - Serial Out (Fiilada Cagaaran): Waxay ku xidhantahay biinka dhijitaalka ah ee 4 ee Arduino-ga (fiidiyowga 03:01).
- CS - Chip Select (Fiilada Cawlan): Waxay ku xidhantahay biinka dhijitaalka ah ee 5 ee Arduino-ga (fiidiyowga 03:08).
- SCK - Serial Clock (Fiilada Cad): Waxay ku xidhantahay biinka dhijitaalka ah ee 6 ee Arduino-ga (fiidiyowga 03:14).
Sharaxaadda Koodhka
Koodhka lagu bixiyey casharran waxaa loo qaabeeyey inuu noqdo mid fudud oo si sahlan loo beddeli karo. Wuxuu ku tiirsan yahay maktabad loo yaqaan max6675.h, oo aad u baahan tahay inaad marka hore ku rakibto. Waxaad ka soo dejisan kartaa maktabadda sida faylka ZIP waxaadna ku dari kartaa Arduino IDE-ga adoo tagaya Sketch -> Include Library -> Add .ZIP Library. Kadib rakibaadda, waa inaad xidhaa oo dib u furtaa Arduino IDE-ga si maktabadda loo aqoonsado (fiidiyowga 04:14).
Marka maktabadda la rakibo, waxaad koobi ka qaadan kartaa koodhka la bixiyey oo ku gelin kartaa sketch-kaaga. Tallaabada koowaad waa inaad ku darto faylka maktabadda, kaas oo siinaya Arduino-ga gelitaanka hawlahaa loo baahan yahay si loola xidhiidho MAX6675 chip-ka (fiidiyowga 03:55). Marka xigta, waxaad qeexi doontaa biinada module-ku ku xidhan yahay. Kuwani waa khadadka koodhka ee kaliya ee aad u baahan tahay inaad beddesho haddii aad go'aansato inaad isticmaasho biino kala duwan oo Arduino-gaaga ah (fiidiyowga 04:52).
int soPin = 4;// SO=Serial Out
int csPin = 5;// CS = chip select CS pin
int sckPin = 6;// SCK = Serial Clock pin
Kadib qeexida biinada, waxaan abuuraynaa tusaale ka mid ah fasalka MAX6675. Nidaamka doodaha ee khadkan waa mid muhiim ah; waa inay ahaadaan nidaamka sckPin, csPin, iyo soPin. Beddeliddooda waxay ka hor istaagi doontaa dareemaha inuu si sax ah u shaqeeyo (fiidiyowga 05:21).
MAX6675 robojax(sckPin, csPin, soPin);// create instance object of MAX6675
Shaygaalka setup(), waxaan ku bilaabnaa kormeerka serial-ka heerka baud-ka 9600 si aan u aragno akhrinta heerkulka kombuyutarkayaga (fiidiyowga 05:41). Macquulka ugu weyn wuxuu ku yaal shaqada loop(). Halkan, waxaan u yeedhnaa hababka readCelsius() iyo readFahrenheit() ee shayga robojax si aan u soo qaadano heerkulka oo aan u daabacno kormeerka serial-ka. Dib-u-hakinta 1000 milliseken (1 ilbiriqsi) ayaa lagu daray dhamaadka loop-ka si loo dejiyo heerka cusboonaysiinta (fiidiyowga 05:54). Haddii aad rabto cusboonaysiin dhakhso leh, waxaad yarayn kartaa dib-u-hakintan ilaa 100 milliseken ama ka yar (fiidiyowga 08:44).
Serial.print("C = ");
Serial.print(robojax.readCelsius());
Serial.print(" F = ");
Serial.println(robojax.readFahrenheit());
delay(1000);
Koodhkani waa tijaabo akhrin aasaasi ah. Waxaad si fudud u ballaarin kartaa si aad u kiciso ficillo ku salaysan xadka heerkulka. Tusaale ahaan, waxaad isticmaali kartaa odhaah if si aad u hubiso in heerkulku ka sarreeyo qiime gaar ah ka dibna aad daarto marwaxad si aad u qaboojiso nidaamka, ama aad daarto kuleyliye haddii heerkulku hoos u dhaco (fiidiyowga 06:42).
Muuujinta Mashruuca Tooska ah
Si loo muujiyo awoodaha dareemaha, fiidiyowgu wuxuu tusayaa thermocouple-ka oo lagu kululeynayo qalab kulayl. Marka kulaylka la adeegsado, akhrinta heerkulka ee kormeerka serial-ka ayaa si degdeg ah u kordheysa. Muuujintu waxay tusaysaa heerkulka oo gaaraya in ka badan 125 darajo Celsius, iyadoo qiimaha Fahrenheit-ka ee u dhigma lagu muujinayo dhinaciisa (fiidiyowga 08:25). Marka qalabka kulaylka laga saaro, waxaad arki kartaa heerkulka oo si tartiib ah u qaboojinaya, taasoo xaqiijinaysa saxnaanta iyo jawaab-celinta dareemaha. Jawaab-celintan tooska ah waxay ka dhigaysaa qaybta MAX6675 doorasho aad u fiican mashruuc kasta oo u baahan kormeer heerkul sare oo sax ah.
Qaybaha Fiidiyowga
- [00:00] Hordhac iyo dulmar mashruuc
- [01:15] Qalabka la sharaxay
- [02:41] Xidhiidhka la sharaxay
- [03:28] Koodhka la sharaxay
- [07:26] Muuujinta cabbiraadda heerkulka
// Original library source:
// www.ladyada.net/learn/sensors/thermocouple
/*
* Arduino code to read temperature using MAX6675 chip and K-type thermocouple
* and display it on the serial monitor
*
* Watch video instructions for this code: https://youtu.be/VGqONmUinqA
* Download this code from Robojax.com
*
* Updated by Ahmad Shamshiri for Robojax.com on Saturday, November 23, 2018
* at 21:25 in Ajax, Ontario, Canada
*
* This code is "AS IS" without warranty or liability. Free to be used as long as you keep this note intact.
* This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
#include "max6675.h" // max6675.h file is part of the library that you should download from Robojax.com
int soPin = 4;// SO=Serial Out
int csPin = 5;// CS = chip select CS pin
int sckPin = 6;// SCK = Serial Clock pin
MAX6675 robojax(sckPin, csPin, soPin);// create instance object of MAX6675
void setup() {
Serial.begin(9600);// initialize serial monitor with 9600 baud
Serial.println("Robojax MAX6675");
}
void loop() {
// Basic readout test, just print the current temperature
// Robojax.com MAX6675 temperature reading on serial monitor
Serial.print("C = ");
Serial.print(robojax.readCelsius());
Serial.print(" F = ");
Serial.println(robojax.readFahrenheit());
delay(1000);
}
Waad u baahan tahay
-
AliExpressPurchase MAX6675 K-Type from Amazons.click.aliexpress.com
-
BanggoodPurchase MAX6675 K-Type from Banggoodbanggood.com
Kheyraadka & Tixraacyada
-
DibeddaDownload the MAX6675 library (from GitHub)github.com
-
DibeddaMAX6675 datasheet (PDF)datasheets.maximintegrated.com
Faylasha📁
Faylal kale
-
MAX6675 maktab
robojax-max6675-thermo.zip0.01 MB