ኮድ ይፈልጉ

የMAX6675 K-ዓይነት ቴርሞኮፕል ዳሳሽ ከአርዱኖ ጋር እንዴት መጠቀም እንደሚቻል

የMAX6675 K-ዓይነት ቴርሞኮፕል ዳሳሽ ከአርዱኖ ጋር እንዴት መጠቀም እንደሚቻል

መግቢያ

የሙቀት መጠንን በትክክል መለካት በብዙ የኤሌክትሮኒክስ ፕሮጀክቶች ውስጥ መሠረታዊ መስፈርት ነው፣ ለPCB ብየዳ የሚሆን የሪፍሎው እቶን ከመገንባት ጀምሮ የ3ዲ አታሚ ሙቅ ጫፍ ወይም የባርቤኪው ማጨሻ የሙቀት መጠንን እስከመከታተል ድረስ። መደበኛ ቴርሚስተሮች እና እንደ DS18B20 ያሉ ዲጂታል ዳሳሾች ለመካከለኛ ሙቀት ጥሩ ቢሰሩም፣ ነገሮች በጣም ሲሞቁ ግን ይሳካሉ። እዚህ ላይ ነው K-ዓይነት ቴርሞኮፕል ወደ ጨዋታ የሚገባው። እሱ ጠንካራ፣ ርካሽ ዳሳሽ ሲሆን እጅግ ከፍተኛ ሙቀትን መለካት የሚችል ነው፣ ነገር ግን ትንሹን የቮልቴጅ ምልክቱን ወደ ሊነበብ የሚችል ዲጂታል እሴት ለመቀየር ልዩ የበይነገጽ ቺፕ ይፈልጋል።

ይህ መመሪያ MAX6675 breakout ቦርድን ከK-ዓይነት ቴርሞኮፕል ዳሳሽ እና ከአርዱኖ ጋር እንዴት እንደሚጠቀሙ ያሳያል፣ ይህም የሙቀት መጠንን በሁለቱም ሴልሺየስ እና ፋራናይት በሴሪያል ሞኒተር ላይ ለማንበብ እና ለማሳየት ያስችላል (በቪዲዮ 00:00 ላይ)። የMAX6675 ሞጁል ውስብስብ የምልክት ማስተካከያ እና የቀዝቃዛ-መገጣጠሚያ ማካካሻ ስራን ለእርስዎ ይሰራል፣ ንጹህ ዲጂታል ውሂብ በSPI ፕሮቶኮል ያወጣል። ይህ ዝግጅት ከፍተኛ የሙቀት መጠን መለካት ለሚፈልጉ ፕሮጀክቶች ፍጹም ነው፣ ለምሳሌ፡-

  • የ3ዲ አታሚ ሙቅ ጫፍ ወይም የሚሞቅ አልጋ የሙቀት መጠንን መከታተል።
  • ለባርቤኪው ግሪል ወይም የኩሽና እቶን ዲጂታል ቴርሞሜትር መገንባት።
  • ለDIY ሪፍሎው እቶን ወይም የብየዳ ጣቢያ የሙቀት መቆጣጠሪያ መፍጠር።
  • በአውቶሞቲቭ ወይም ሮቦቲክስ ፕሮጀክቶች ውስጥ የጭስ ማውጫ ጋዝ ሙቀትን መለካት።

የሃርድዌር ክፍሎች

ይህን ትምህርት ለመከተል የሚከተሉትን ክፍሎች ያስፈልግዎታል። የወልና ግንኙነት ቀላል ነው፣ እና ኮዱ ከሁሉም የአርዱኖ ቦርድ ስሪቶች ጋር ተኳሃኝ ነው (በቪዲዮ 00:47 ላይ)።

  • አርዱኖ ቦርድ (Uno፣ Mega፣ Nano፣ ወዘተ.)
  • MAX6675 ሞጁል (breakout ቦርድ)
  • K-ዓይነት ቴርሞኮፕል ዳሳሽ (ማንኛውም የፕሮብ ዓይነት)
  • ጃምፐር ሽቦዎች

የMAX6675 ሞጁል ራሱ በጣም ትንሽ ነው። በቪዲዮው ላይ እንደሚታየው፣ ልኬቶቹ 32.1ሚሜ ርዝመት፣ 15.6ሚሜ ስፋት እና 16.3ሚሜ ጥልቀት አሉት (በቪዲዮ 02:35 ላይ)። ሞጁሉ ቴርሞኮፕሉን ለማገናኘት ትንሽ ተርሚናል ብሎክ እና ለኃይል እና ለSPI ግንኙነት የፒን ረድፍ አለው። K-ዓይነት ቴርሞኮፕል በትክክለኛው የፖላሪቲ አቅጣጫ ከሞጁሉ ጋር ይገናኛል፤ ቀዩ (አዎንታዊ) ሽቦ ወደ '+' ተርሚናል እና ቢጫው (አሉታዊ) ሽቦ ወደ '-' ተርሚናል ይሄዳል (በቪዲዮ 01:27 ላይ)።

ቴክኒካዊ ዝርዝሮች

ወደ የወልና ግንኙነት ከመግባታችን በፊት፣ የMAX6675 ቺፕ አቅሞችን መረዳት ጠቃሚ ነው። ከማክሲም ኢንተግሬትድ የውሂብ ሉህ እንደተገለጸው፣ ሞጁሉ ሰፊ የሙቀት መጠን መለካት ይችላል፣ ይህም ለኢንዱስትሪ እና ለትርፍ ጊዜ ማሳለፊያ መተግበሪያዎች ተስማሚ ያደርገዋል (በቪዲዮ 01:44 ላይ)።

  • የመለኪያ ክልል፡- 0°ሴ እስከ +1024°ሴ
  • ጥራት፡- 12-ቢት (0.25°ሴ)
  • ግንኙነት፡- SPI (Serial Peripheral Interface)
  • የአሠራር ቮልቴጅ፡- 3.0V እስከ 5.5V

የወልና መመሪያ

የMAX6675 የወልና ግንኙነት ቀላል ነው፣ የኃይል ግንኙነት እና ለSPI ግንኙነት ሶስት ዲጂታል ፒኖች ብቻ ይፈልጋል። በዚህ ምሳሌ ውስጥ፣ ለውሂብ መስመሮቹ የአርዱኖ ፒኖች 4፣ 5 እና 6 እንጠቀማለን (በቪዲዮ 03:28 ላይ)። ግንኙነቶቹ እንደሚከተለው ናቸው፡-

  • VCC (ብርቱካናማ ሽቦ)፡- ከአርዱኖው 5V ፒን ጋር ይገናኛል (በቪዲዮ 02:56 ላይ)።
  • GND (ቢጫ ሽቦ)፡- ከአርዱኖው GND ፒን ጋር ይገናኛል (በቪዲዮ 02:51 ላይ)።
  • SO - Serial Out (አረንጓዴ ሽቦ)፡- ከአርዱኖ ዲጂታል ፒን 4 ጋር ይገናኛል (በቪዲዮ 03:01 ላይ)።
  • CS - Chip Select (ግራጫ ሽቦ)፡- ከአርዱኖ ዲጂታል ፒን 5 ጋር ይገናኛል (በቪዲዮ 03:08 ላይ)።
  • SCK - Serial Clock (ነጭ ሽቦ)፡- ከአርዱኖ ዲጂታል ፒን 6 ጋር ይገናኛል (በቪዲዮ 03:14 ላይ)።

የኮድ ማብራሪያ

በዚህ ትምህርት ውስጥ የቀረበው ኮድ ቀላል እና ለመቀየር ቀላል እንዲሆን የተነደፈ ነው። እሱ max6675.h በሚባል ቤተ-መጻሕፍት ላይ ይመሰረታል፣ እሱም መጀመሪያ መጫን ያስፈልግዎታል። ቤተ-መጻሕፍቱን እንደ ZIP ፋይል ማውረድ እና ወደ አርዱኖ IDE በ Sketch -> Include Library -> Add .ZIP Library በመሄድ ማከል ይችላሉ። ከተጫነ በኋላ፣ ቤተ-መጻሕፍቱ እንዲታወቅ አርዱኖ IDE ን መዝጋት እና እንደገና መክፈት አለብዎት (በቪዲዮ 04:14 ላይ)።

ቤተ-መጻሕፍቱ ከተጫነ በኋላ፣ የቀረበውን ኮድ ወደ ስኬችዎ መቅዳት ይችላሉ። የመጀመሪያው እርምጃ የቤተ-መጻሕፍት ፋይሉን ማካተት ነው፣ ይህም ከMAX6675 ቺፕ ጋር ለመግባባት ለሚያስፈልጉት ተግባራት አርዱኖውን መዳረሻ ይሰጠዋል (በቪዲዮ 03:55 ላይ)። በመቀጠል፣ ሞጁሉ የተገናኘባቸውን ፒኖች ይገልጻሉ። በአርዱኖዎ ላይ የተለያዩ ፒኖች ለመጠቀም ከወሰኑ መቀየር ያለብዎት እነዚህ ብቸኛ የኮድ መስመሮች ናቸው (በቪዲዮ 04:52 ላይ)።


int soPin = 4;// SO=Serial Out
int csPin = 5;// CS = chip select CS pin
int sckPin = 6;// SCK = Serial Clock pin

ፒኖቹን ከገለጹ በኋላ፣ የMAX6675 ክፍል ምሳሌ እንፈጥራለን። በዚህ መስመር ውስጥ የክርክር ክርክሮች ቅደም ተከተል ወሳኝ ነው፤ እነሱ በ sckPincsPin እና soPin ቅደም ተከተል መሆን አለባቸው። መቀያየር ዳሳሹ በትክክል እንዳይሰራ ይከላከላል (በቪዲዮ 05:21 ላይ)።


MAX6675 robojax(sckPin, csPin, soPin);// create instance object of MAX6675

setup() ተግባር ውስጥ፣ የሴሪያል ሞኒተሩን በ9600 ባውድ ሬት እንጀምራለን፣ ይህም የሙቀት መጠን ንባቦችን በኮምፒውተራችን ላይ ለማየት ያስችለናል (በቪዲዮ 05:41)። ዋናው አመክንዮ በloop() ተግባር ውስጥ ይገኛል። እዚህ፣ የሙቀት መጠኑን ለማግኘት እና ለሴሪያል ሞኒተሩ ለማተም የrobojax ነገርን readCelsius() እና readFahrenheit() ዘዴዎችን እንጠራለን። የማደሻ ፍጥነቱን ለማዘጋጀት በloop መጨረሻ ላይ የ1000 ሚሊሰከንድ (1 ሰከንድ) መዘግየት ተጨምሯል (በቪዲዮ 05:54)። ፈጣን ማዘመን ከፈለጉ፣ ይህን መዘግየት ወደ 100 ሚሊሰከንድ ወይም ከዚያ ያነሰ መቀነስ ይችላሉ (በቪዲዮ 08:44)።


Serial.print("C = "); 
Serial.print(robojax.readCelsius());
Serial.print(" F = ");
Serial.println(robojax.readFahrenheit());
delay(1000);

ይህ ኮድ መሰረታዊ የንባብ ሙከራ ነው። በሙቀት መጠን ገደቦች ላይ ተመስርተው እርምጃዎችን ለመቀስቀስ በቀላሉ ማስፋት ይችላሉ። ለምሳሌ፣ የሙቀት መጠኑ ከተወሰነ እሴት በላይ መሆኑን ለማረጋገጥ የif መግለጫ መጠቀም እና ስርዓቱን ለማቀዝቀዝ ማራገቢያ ማብራት፣ ወይም የሙቀት መጠኑ በጣም ከወረደ ማሞቂያ ማብራት ይችላሉ (በቪዲዮ 06:42)።

የቀጥታ ፕሮጀክት ማሳያ

የሴንሰሩን አቅም ለማሳየት፣ ቪዲዮው ቴርሞኮፕሉ በሙቀት ጠመንጃ ሲሞቅ ያሳያል። ሙቀቱ ሲተገበር፣ በሴሪያል ሞኒተሩ ላይ ያለው የሙቀት መጠን ንባብ በፍጥነት ይጨምራል። ማሳያው የሙቀት መጠኑ ከ125 ዲግሪ ሴልሺየስ በላይ ሲደርስ ያሳያል፣ ተጓዳኝ የፋራናይት እሴቱም ከጎኑ ይታያል (በቪዲዮ 08:25)። የሙቀት ጠመንጃው ከተወገደ በኋላ፣ የሙቀት መጠኑ ቀስ በቀስ ሲቀዘቅዝ ማየት ይችላሉ፣ ይህም የሴንሰሩን ትክክለኛነት እና ምላሽ ሰጪነት ያረጋግጣል። ይህ የእውነተኛ ጊዜ ግብረመልስ MAX6675 ሞጁሉን ትክክለኛ እና ከፍተኛ የሙቀት መጠን ክትትል ለሚፈልግ ማንኛውም ፕሮጀክት እጅግ በጣም ጥሩ ምርጫ ያደርገዋል።

የቪዲዮ ምዕራፎች

  • [00:00] መግቢያ እና የፕሮጀክት አጠቃላይ እይታ
  • [01:15] ሃርድዌር ተብራርቷል
  • [02:41] ሽቦ አያያዝ ተብራርቷል
  • [03:28] ኮድ ተብራርቷል
  • [07:26] የሙቀት መጠን መለኪያ ማሳያ

ምስሎች

MAX6675 Thermocoupler module
MAX6675 Thermocoupler module
K-Type Thermocoupler module with wire
K-Type Thermocoupler module with wire
K-Type thermocoupler connector
K-Type thermocoupler connector
Arduino wiring for MAX6675 Thermocoupler module
Arduino wiring for MAX6675 Thermocoupler module
MAX6675 Thermocoupler module
MAX6675 Thermocoupler module
171-How to use a MAX6675 thermocouple K-type sensor with Arduino
ቋንቋ: C++
// 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);
}

እንደሚያስፈልግዎት ይችላል

ምንጮች እና ምንጮች

ፋይሎች📁

ሌላ ፋይሎች