- தேவையான கூறுகள்
- ஆர்டுயினோவுடன் MAX30205 - சுற்று வரைபடம்
- MAX30205 உடல் வெப்பநிலை சென்சார் மூலம் Arduino ஐ இடைமுகப்படுத்துகிறது
- Arduino உடன் MAX30205 புரோகிராமிங்
- Arduino உடல் வெப்பநிலை மீட்டர் - சோதனை
மருத்துவ அல்லது மருத்துவ பயன்பாடுகளுக்கு, மனிதனின் உடல் வெப்பநிலையை அளவிடுவது எந்தவொரு நபரின் ஆரோக்கிய நிலையையும் தீர்மானிக்க ஒரு முக்கியமான அளவுருவாகும். இருப்பினும், வெப்பநிலையை உணர நிறைய வழிகள் உள்ளன, ஆனால் எல்லாவற்றிற்கும் மருத்துவ வெப்பநிலை விவரக்குறிப்புகளை பூர்த்தி செய்வதற்கான துல்லியம் இல்லை. MAX30205 வெப்பநிலை சென்சார் இந்த பயன்பாட்டிற்காக குறிப்பாக வடிவமைக்கப்பட்டுள்ளது. இந்த சென்சார் தொடர்பு இல்லாத வெப்பநிலை சென்சார் அல்ல என்பதை நினைவில் கொள்க, நீங்கள் தொடர்பு இல்லாத ஐஆர் வெப்பநிலை அளவீட்டைத் தேடுகிறீர்களானால், நாங்கள் முன்பு வடிவமைத்த MLX90614 தெர்மோமீட்டரைப் பாருங்கள்.
இந்த திட்டத்தில், ஒரு MAX30205 மனித உடல் வெப்பநிலை சென்சாரை இடைமுகப்படுத்துவோம், அவை உடற்தகுதி இசைக்குழுவுடன் எளிதாக இணைக்கப்படலாம் அல்லது மருத்துவ நோக்கங்களுக்காக பயன்படுத்தப்படலாம். அர்டுயினோ நானோவை முக்கிய மைக்ரோ-கன்ட்ரோலர் யூனிட்டாகப் பயன்படுத்துவோம், மேலும் ஃபாரன்ஹீட்டில் உணரப்பட்ட வெப்பநிலையைக் காட்ட 7-பிரிவு காட்சிகளையும் பயன்படுத்துவோம். சென்சார் எவ்வாறு பயன்படுத்துவது என்பது உங்களுக்குத் தெரிந்தவுடன், நீங்கள் விரும்பும் எந்தவொரு பயன்பாட்டையும் பயன்படுத்தலாம், MAX30205 உடன் இணைந்து இந்த Arduino ஸ்மார்ட்வாட்ச் திட்டத்தையும் நீங்கள் பார்க்கலாம், இது தனிநபர்களின் வெப்பநிலையைக் கண்காணிக்கப் பயன்படுகிறது.
தேவையான கூறுகள்
- அர்டுடினோ நானோ
- 7-செக் பொதுவான கேத்தோடு - 3 பிசிக்கள் காட்டுகிறது
- 74HC595 - 3 பிசிக்கள்
- 680 ஆர் மின்தடை - 24 பிசிக்கள்
- MAX30205 தொகுதி பலகை
- 5 வி மின்சாரம்
- ப்ரெட்போர்டு
- கம்பிகள் நிறைய ஹூக் அப்
- Arduino IDE
- மைக்ரோ-யூ.எஸ்.பி கேபிள்

ஆர்டுயினோவுடன் MAX30205 - சுற்று வரைபடம்
உடல் வெப்பநிலை சென்சார் MAX30205 உடன் Arduino ஐ இணைப்பதற்கான முழுமையான சுற்று வரைபடம் கீழே காட்டப்பட்டுள்ளது. சுற்று மிகவும் எளிதானது, ஆனால் நாங்கள் 7-பிரிவு காட்சிகளைப் பயன்படுத்தியுள்ளதால், இது சற்று சிக்கலானதாகத் தெரிகிறது. Arduino உடனான 7-பிரிவு காட்சிகள் உங்கள் மதிப்பை மிகக் குறைந்த செலவில் பெரியதாகவும் பிரகாசமாகவும் காண்பிக்க சிறந்த வழியாகும். நீங்கள் விரும்பினால் இந்த மதிப்புகளை OLED அல்லது LCD இல் காட்டலாம்.

Arduino நானோ மூன்று 74HC595 உடன் இணைக்கப்பட்டுள்ளது. மூன்று 7-செக் டிஸ்ப்ளேக்களை இணைப்பதற்காக ஆர்டுயினோ நானோவிலிருந்து கூடுதல் வெளியீட்டு ஊசிகளைச் சேமிக்க மூன்று 74HC595 ஒன்றாக இணைக்கப்பட்டுள்ளன. Arduino கடிகாரம், எல்.ஈ.டி போர்டு டிஸ்ப்ளே, அர்டுயினோ பாம்பு விளையாட்டு போன்ற பல திட்டங்களில் Arduino உடன் 74HC595 ஐ முன்னர் பயன்படுத்தியுள்ளோம்.
MAX30205 தொகுதி குழுவிற்கு I2C நெறிமுறையுடன் தொடர்புகொள்வதால் கூடுதல் இழுக்கும் மின்தடையங்கள் தேவைப்படுகின்றன. இருப்பினும், சில தொகுதி பலகைகளுக்கு கூடுதல் இழுத்தல் தேவையில்லை, ஏனெனில் இழுத்தல்-மின்தடையங்கள் ஏற்கனவே தொகுதிக்குள் கொடுக்கப்பட்டுள்ளன. ஆகையால், தொகுதி குழுவில் உள் இழுக்கும் மின்தடையங்கள் உள்ளதா என்பதை உறுதிப்படுத்த வேண்டும் அல்லது அதற்கு கூடுதலாக வெளிப்புற இழுப்பு தேவை. இந்த திட்டத்தில் பயன்படுத்தப்படும் பலகையில் ஏற்கனவே தொகுதிக் குழுவிற்குள் உள்ளடிக்கிய புல்-அப் மின்தடையங்கள் உள்ளன.
MAX30205 உடல் வெப்பநிலை சென்சார் மூலம் Arduino ஐ இடைமுகப்படுத்துகிறது
இங்கு பயன்படுத்தப்படும் சென்சார் அதிகபட்சமாக ஒருங்கிணைந்த MAX30205 ஆகும். MAX30205 வெப்பநிலை சென்சார் 0.1 ° C துல்லியத்துடன் (37 ° C முதல் 39 ° C வரை) வெப்பநிலையை துல்லியமாக அளவிடுகிறது. சென்சார் I2C நெறிமுறையுடன் செயல்படுகிறது.

தொகுதி பலகை 5 அல்லது 3.3 வி உடன் வேலை செய்ய முடியும். இருப்பினும், போர்டு 5 வி இயக்க மின்னழுத்தத்துடன் பயன்படுத்த கட்டமைக்கப்பட்டுள்ளது. இது ஒரு லாஜிக் லெவல் ஷிஃப்டரையும் உள்ளடக்கியது, ஏனெனில் சென்சார் அதிகபட்சமாக 3.3 வி ஐ சக்தி அல்லது தரவு தொடர்பு தொடர்பான நோக்கங்களாக ஆதரிக்கிறது.
வெளியீட்டில், மூன்று 74HC595, 8-பிட் ஷிப்ட் பதிவேடுகள் மூன்று 7-பிரிவு காட்சிகளை Arduino NANO உடன் இடைமுகப்படுத்த பயன்படுத்தப்படுகின்றன. முள் வரைபடத்தை கீழே உள்ள படத்தில் காட்டலாம்-

74HC595 இன் முள் விளக்கத்தை கீழே உள்ள அட்டவணையில் காணலாம்-

QA முதல் QH வரை 7-Seg காட்சிகளுடன் இணைக்கப்பட்டுள்ள தரவு வெளியீட்டு ஊசிகளாகும். மூன்று 74HC595 ஒன்றாக இணைக்கப்பட்டிருப்பதால், முதல் ஷிப்ட் பதிவின் தரவு உள்ளீட்டு முள் (PIN14) Arduino NANO உடன் இணைக்கப்படும் மற்றும் சீரியல் தரவு வெளியீட்டு முள் அடுத்த ஷிப்ட் பதிவேட்டில் தரவை வழங்கும். இந்த தொடர் தரவு இணைப்பு மூன்றாவது 74HC595 வரை தொடரும்.
Arduino உடன் MAX30205 புரோகிராமிங்
இந்த டுடோரியலுக்கான முழுமையான நிரலை இந்த பக்கத்தின் கீழே காணலாம். இந்த குறியீட்டின் விளக்கம் பின்வருமாறு. முதலில், நாங்கள் நிலையான Arduino I2C நூலக தலைப்பு கோப்பை உள்ளடக்குகிறோம்.
#சேர்க்கிறது
மேலே உள்ள வரியில் புரோட்டோசென்ட்ரலில் இருந்து அர்டுயினோ பங்களித்த நூலகம் இருக்கும். இந்த நூலகம் MAX30205 சென்சாருடன் தொடர்பு கொள்ள முக்கியமான செயல்பாடுகளைக் கொண்டுள்ளது. கீழேயுள்ள கிட்ஹப் இணைப்பிலிருந்து நூலகம் எடுக்கப்பட்டுள்ளது-
https://github.com/protocentral/ProtoCentral_MAX30205
நூலகத்தை இறக்குமதி செய்த பிறகு, கீழே காட்டப்பட்டுள்ளபடி MAX30205 பொருள் தரவை வரையறுக்கிறோம்-
# அடங்கும் "புரோட்டோசென்ட்ரல்_எம்ஏஎக்ஸ் 30205.ஹெ" MAX30205 டெம்ப்சென்சர்;
அளவுருக்களை அமைக்க அடுத்த இரண்டு வரிகள் முக்கியம். உண்மை என அமைக்கப்பட்டால் கீழேயுள்ள வரி பாரன்ஹீட்டில் வெப்பநிலையை வழங்கும். செல்சியஸில் முடிவைக் காண்பிப்பதற்கு, வரி தவறானதாக அமைக்கப்பட வேண்டும்.
const bool fahrenheittemp = உண்மை; // நான் ஃபாரன்ஹீட்டில் வெப்பநிலையைக் காட்டுகிறேன், செல்சியஸில் வெப்பநிலையைக் காட்ட விரும்பினால், இந்த மாறியை தவறானதாக ஆக்குங்கள்.
வன்பொருளில் பொதுவான கேத்தோடு வகை 7-பிரிவு காட்சிகள் பயன்படுத்தப்படுகிறதென்றால் கீழே உள்ள வரியை உள்ளமைக்க வேண்டும். பொதுவான அனோட் பயன்படுத்தப்பட்டால் அதை பொய்யாக்குங்கள்.
const bool commonCathode = உண்மை; // நான் பொதுவான கத்தோட் 7 பிரிவைப் பயன்படுத்துகிறேன், நீங்கள் பொதுவான அனோடைப் பயன்படுத்தினால், மதிப்பை தவறானதாக மாற்றவும். const byte digit_pattern = {// 74HC595 7 பிரிவு காட்சியுடன் அவுட்பின் இணைப்பு. // Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7 // abcdefg DP 0b11111100, // 0 0b01100000, // 1 0b11011010, // 2 0b11110010, // 3 0b01100110, // 4 0b10110110, // 5 0b10111110, // 6 0b11100000. };
7-பிரிவு காட்சிகளுக்கான இலக்க வடிவத்தை சேமிக்க மேலே உள்ள வரிசை பயன்படுத்தப்படுகிறது.
அமைவு செயல்பாட்டில், 74HC595 ஊசிகளின் முள் முறைகளை அமைத்த பிறகு, I2C நெறிமுறை மற்றும் வெப்பநிலை சென்சார் வாசிப்பு துவக்கப்படுகிறது.
void setup () {// உங்கள் அமைவு குறியீட்டை இங்கே வைக்கவும், ஒரு முறை இயக்கவும்: // சீரியல் போர்ட்டை 9600 Serial.begin (9600) இல் அமைக்கவும்; தாமதம் (1000); // 74HC595 கண்ட்ரோல் பின்னை வெளியீட்டு பின்மோடாக அமைக்கவும் (லாட்ச்பின், OUTPUT); // 74HC595 பின்மோடின் ST_CP (clkPin, OUTPUT); 74HC595 பின்மோடின் // SH_CP (dtPin, OUTPUT); 74HC595 இன் // DS // I2C Libs Wire.begin () ஐ துவக்கு; // தொடர் MAX30205 வெப்பநிலை தொடர்ச்சியான பயன்முறையில் படிக்கப்படுகிறது, செயலில் பயன்முறை tempSensor.begin (); }
சுழற்சியில், வெப்பநிலை tempSensor.getTemperature () செயல்பாட்டால் படிக்கப்பட்டு டெம்ப் என்ற மிதவை மாறியில் சேமிக்கப்படுகிறது. அதன் பிறகு, பாரன்ஹீட் வெப்பநிலை பயன்முறை தேர்ந்தெடுக்கப்பட்டால், தரவு செல்சியஸிலிருந்து பாரன்ஹீட்டாக மாற்றப்படும். பின்னர், மாற்றப்பட்ட உணர்திறன் வெப்பநிலை தரவிலிருந்து மூன்று இலக்கங்கள் மேலும் மூன்று தனிப்பட்ட இலக்கங்களாக பிரிக்கப்படுகின்றன. இதைச் செய்ய, குறியீடுகளின் வரிகளுக்கு கீழே பயன்படுத்தப்படுகிறது-
// தற்போதைய வெப்பநிலையிலிருந்து 3 இலக்கங்களை பாதுகாக்கவும் (தற்காலிகமாக இருந்தால் = 31.23 சி,) int dispDigit1 = (int) temp / 10; // இலக்க 1 3 int dispDigit2 = (int) temp% 10; // இலக்க 2 1 int dispDigit3 = (temp * 10) - ((int) temp * 10); // இலக்க 3 2
இப்போது, பிரிக்கப்பட்ட மூன்று இலக்கங்கள் 74HC595 ஷிப்ட் பதிவேடுகளைப் பயன்படுத்தி 7-பிரிவு காட்சிகளுக்கு அனுப்பப்படுகின்றன. மூன்றாவது 74HC595 வழியாக LSB முதன்முதலில் மூன்றாவது 7-பிரிவு காட்சியில் காட்டப்பட்டதால், 3 வது இலக்கமானது முதலில் பரவுகிறது. இதைச் செய்ய, லாட்ச் முள் குறைவாக இழுக்கப்பட்டு, ஷிப்ட்ஆட் () செயல்பாட்டின் மூலம் தரவு 74HC595 க்கு சமர்ப்பிக்கப்படுகிறது ;
அதே வழியில், மீதமுள்ள இரண்டாவது மற்றும் முதல் இலக்கங்களும் அந்தந்த 74HC595 க்கு அனுப்பப்படுகின்றன, இதனால் மீதமுள்ள இரண்டு 7-பிரிவு காட்சிகள் உள்ளன. எல்லா தரவையும் அனுப்பிய பிறகு, தரவு பரிமாற்றத்தின் முடிவை உறுதிப்படுத்த தாழ்ப்பாள் முள் வெளியிடப்பட்டு உயரமாக இழுக்கப்படுகிறது. அந்தந்த குறியீடுகளை கீழே காணலாம் -
// 3, 7 பிரிவு காட்சியாக இலக்கங்களைக் காண்பி. டிஜிட்டல்ரைட் (லாட்ச்பின், குறைந்த); if (commonCathode == true) {shiftOut (dtPin, clkPin, LSBFIRST, digit_pattern); shiftOut (dtPin, clkPin, LSBFIRST, digit_pattern-digit_pattern); // 1. (இலக்க + டிபி) ஷிப்ட்ஆட் (டிடிபின், க்ளக்பின், எல்.எஸ்.பி.எஃப்.ஆர்.எஸ்.டி, இலக்க_படம்); } else {shiftOut (dtPin, clkPin, LSBFIRST, ~ (digit_pattern)); shiftOut (dtPin, clkPin, LSBFIRST, ~ (digit_pattern-digit_pattern)); // 1. (இலக்க + டிபி) ஷிப்ட்ஆட் (டிடிபின், க்ளக்பின், எல்.எஸ்.பி.எஃப்.ஆர்.எஸ்.டி, ~ (இலக்க_படம்)); } டிஜிட்டல்ரைட் (லாட்ச்பின், உயர்);
Arduino உடல் வெப்பநிலை மீட்டர் - சோதனை
நீங்கள் கீழே காணக்கூடியபடி சுற்று இரண்டு செட் பிரட்போர்டுகளில் கட்டப்பட்டுள்ளது. நாம் சென்சாரில் விரலை வைக்கும்போது, வெப்பநிலை உணரப்பட்டு வெளியீடு 7 பிரிவு காட்சிக்கு காட்டப்படும், இங்கே மதிப்பு 92.1 * F ஆகும்.

திட்டத்தின் முழுமையான செயல்பாட்டை கீழே இணைக்கப்பட்ட வீடியோவில் காணலாம். நீங்கள் திட்டத்தை உருவாக்கி மகிழ்ந்தீர்கள் மற்றும் பயனுள்ள ஒன்றைக் கற்றுக்கொண்டீர்கள் என்று நம்புகிறேன். உங்களிடம் ஏதேனும் கேள்விகள் இருந்தால், அவற்றை கீழே உள்ள கருத்துப் பிரிவில் விடவும் அல்லது எங்கள் மன்றங்களைப் பயன்படுத்தவும்.
