DS18B20: ટેમ્પરેચર સેન્સર ફીચર્સ

  • DS18B20 સેન્સર 55 થી 125 બિટ્સ સુધી એડજસ્ટેબલ રિઝોલ્યુશન સાથે -9°C થી 12°C તાપમાન માપી શકે છે.
  • તેને તેના ડેટા પિન દ્વારા સંચાલિત કરી શકાય છે અથવા વધુ સ્થિરતા માટે બાહ્ય સ્ત્રોતનો ઉપયોગ કરી શકાય છે.
  • તે એક જ બસમાં બહુવિધ સેન્સર્સના જોડાણને મંજૂરી આપે છે, જેમાં દરેકને તેના અનન્ય 64-બીટ સરનામાં દ્વારા ઓળખવામાં આવે છે.
  • તે OneWire અને DallasTemperature લાઇબ્રેરીનો ઉપયોગ કરીને Arduino સાથે સુસંગત છે.

ds18b20

El DS18B20 સેન્સર તેની વિશ્વસનીયતા અને તાપમાન માપન માટે વૈવિધ્યતાને કારણે લોકપ્રિયતા મેળવી છે. તેનો ઉપયોગ સરળતા અને એક જ બસમાં બહુવિધ સેન્સર્સને કનેક્ટ કરવાની ક્ષમતાને કારણે Arduino, PIC અથવા ESP8266 જેવા માઇક્રોકન્ટ્રોલર સાથે ઇલેક્ટ્રોનિક્સ પ્રોજેક્ટ્સમાં વ્યાપકપણે થાય છે, જે તેને એમેચ્યોર અને વ્યાવસાયિકો બંને માટે એક આદર્શ વિકલ્પ બનાવે છે.

આ સેન્સરનું એક મુખ્ય આકર્ષણ એ છે કે તે પ્રોટોકોલનો ઉપયોગ કરીને ડેટા કમ્યુનિકેશન માટે માત્ર એક કેબલનો ઉપયોગ કરે છે. 1- વાયર, જે તેના વિવિધ પ્રોજેક્ટ્સમાં એકીકરણની સુવિધા આપે છે. વધુમાં, DS18B20 બે અલગ-અલગ પાવર મોડમાં કામ કરી શકે છે, જે તેને વધુ લવચીક બનાવે છે. આ સમગ્ર લેખમાં, અમે તે કેવી રીતે કાર્ય કરે છે, તમે કેવી રીતે બહુવિધ સેન્સર્સને કનેક્ટ કરી શકો છો અને તમારા તાપમાન માપને કેવી રીતે ઑપ્ટિમાઇઝ કરી શકો છો તે વિશે ઊંડાણપૂર્વક સમજાવીશું.

DS18B20 સુવિધાઓ

DS18B20 દ્વારા ઉત્પાદિત કરવામાં આવે છે મેક્સિમ ઇન્ટિગ્રેટેડ, અન્યો વચ્ચે, અને વિવિધ એન્કેપ્સ્યુલેશનમાં રજૂ કરવામાં આવે છે, ફોર્મેટ છે ટૂ -92 (ઘણા ટ્રાન્ઝિસ્ટરની જેમ) સૌથી સામાન્યમાંનું એક. વધુમાં, તે સીલબંધ અને વોટરપ્રૂફ વર્ઝનમાં પણ મળી શકે છે, જે તેને કઠોર અથવા ભેજવાળા વાતાવરણમાં તાપમાન માપવા માટે આદર્શ બનાવે છે.

DS18B20 ની સૌથી નોંધપાત્ર લાક્ષણિકતાઓમાં આ છે:

  • તાપમાન શ્રેણી કે જેનાથી તે કવર માપી શકે છે -55°C થી 125°C, તેને ઔદ્યોગિક અને સ્થાનિક એપ્લિકેશનો માટે યોગ્ય બનાવે છે.
  • Su પ્રોગ્રામેબલ રીઝોલ્યુશન વચ્ચે બદલાઈ શકે છે 9 અને 12 બિટ્સ, દરેક પ્રોજેક્ટની જરૂરિયાતોને આધારે ચોક્કસ ગોઠવણની મંજૂરી આપે છે.
  • દરેક સેન્સરનું એક વિશિષ્ટ સરનામું હોય છે 64 બિટ્સ, એક જ બસમાં જોડાયેલા બહુવિધ સેન્સરની ઓળખની સુવિધા.

DS18B20 પાવર મોડ્સ

ds18b20 પિન-આઉટ

સેન્સર બે પાવર મોડમાં કામ કરી શકે છે, તેને વિવિધ પ્રોજેક્ટ્સમાં એકીકૃત કરતી વખતે લવચીકતા પૂરી પાડે છે, દરેક તેના પોતાના ફાયદાઓ સાથે.

ડેટા પિન દ્વારા પાવર (પેરાસાઇટ પાવર)

જ્યારે જગ્યા મર્યાદિત હોય અથવા લાંબા અંતરના જોડાણોની જરૂર હોય ત્યારે આ મોડ આદર્શ છે. DS18B20 જ્યારે તે ઊંચી હોય ત્યારે ડેટા પિનમાંથી સીધા પાવર ખેંચે છે અને જ્યારે ડેટા લાઇન ઓછી હોય ત્યારે તે પાવરને નાના કેપેસિટરમાં સંગ્રહિત કરે છે. આ પ્રકારના આહારને કહેવામાં આવે છે પરોપજીવી શક્તિ.

જો કે, એ નોંધવું અગત્યનું છે કે તે યોગ્ય રીતે કાર્ય કરવા માટે, પિનને કનેક્ટ કરવું જરૂરી છે GND y વીડીડી કિનારે વધુમાં, ટ્રાંઝિસ્ટરનો સમાવેશ કરવાની સલાહ આપવામાં આવે છે મોસ્ફેટ જે એવી પરિસ્થિતિઓમાં મદદ કરે છે જ્યાં તાપમાનના રૂપાંતરને વધુ વર્તમાનની જરૂર હોય છે.

બાહ્ય સ્ત્રોતનો ઉપયોગ કરીને પાવર

DS18B20 ને પાવર કરવાની સૌથી સામાન્ય અને ભલામણ કરેલ રીત એ પિન સાથે જોડાયેલા બાહ્ય સ્ત્રોત દ્વારા છે. વીડીડી. આ પદ્ધતિ 1-વાયર બસ પર ડેટા ટ્રાફિકથી સ્વતંત્ર સ્થિર વોલ્ટેજની બાંયધરી આપે છે, જે સતત ચોકસાઈની જરૂર હોય તેવા પ્રોજેક્ટ માટે ફાયદાકારક છે.

Arduino સાથે DS18B20 નો ઉપયોગ કેવી રીતે કરવો

arduino જોડાણ

Arduino પ્લેટફોર્મ પર આ સેન્સર સાથે કામ કરવા માટે, બે મૂળભૂત પુસ્તકાલયોનો ઉપયોગ કરવો જરૂરી છે: વનવાયર y ડલ્લાસ તાપમાન. આ પુસ્તકાલયો સંદેશાવ્યવહારની સુવિધા આપે છે અને વાંચન અને રૂપરેખાંકનો સરળતાથી હાથ ધરવા દે છે.

વનવાયર લાઇબ્રેરી: 1-વાયર પ્રોટોકોલનો ઉપયોગ કરીને સંચારની મંજૂરી આપે છે. પરથી ડાઉનલોડ કરી શકાય છે ગિટહબ રીપોઝીટરી.

ડલ્લાસ બુકસ્ટોર તાપમાન: તે તાપમાન વાંચવા અને સેન્સરને ગોઠવવા માટે જરૂરી કાર્યો ધરાવે છે. તે પરથી ડાઉનલોડ કરો આ લિંક.

એકવાર તમે બંને લાઇબ્રેરીઓ ઇન્સ્ટોલ કરી લો તે પછી, તમે ગૂંચવણો વિના સેન્સર સાથે કામ કરવાનું શરૂ કરી શકો છો. નીચે અમે તાપમાન કેવી રીતે વાંચવું અને બહુવિધ સેન્સર સાથે કેવી રીતે કાર્ય કરવું તેના કેટલાક ઉદાહરણો સમજાવીએ છીએ.

ઉદાહરણ 1: એક સેન્સર વડે તાપમાન વાંચન

Arduino સાથે જોડાયેલ સિંગલ DS18B20 સાથે તાપમાન રીડિંગ કરવા માટે, મૂળભૂત સર્કિટમાં ફક્ત સેન્સરના ડેટા પિનને સાથે જોડવાનો સમાવેશ થાય છે. ડિજિટલ પિન 2 Arduino ના, એક રેઝિસ્ટર સાથે ઉપર ખેચવું 4.7kΩ ના.

સેન્સર તાપમાન વાંચવા માટે આ મૂળભૂત કોડ છે:

#include <OneWire.h>  #include <DallasTemperature.h>  OneWire  ds(2);  DallasTemperature sensors(&ds); void setup() {   Serial.begin(9600);   sensors.begin(); } void loop() {   sensors.requestTemperatures();   float tempC = sensors.getTempCByIndex(0);   Serial.print("Temperatura= ");   Serial.print(tempC);   Serial.println(" °C");   delay(1000); }

કોડ એકદમ સરળ છે. તાપમાનની વિનંતી કરવા અને તેને વાંચવા માટે તેને મુખ્ય લૂપમાં માત્ર બે લીટીઓની જરૂર પડે છે, જે તેને અમલમાં મૂકવાનું અને વિવિધ ઉપયોગો માટે કસ્ટમાઇઝ કરવાનું ખૂબ જ સરળ બનાવે છે.

ઉદાહરણ 2: વિવિધ પિન પર બહુવિધ સેન્સરનો ઉપયોગ કરવો

એક કરતાં વધુ DS18B20 સાથે કામ કરતી વખતે, સેન્સરને કનેક્ટ કરવાની બે રીતો છે. પ્રથમ દરેક સેન્સરને અલગ Arduino ડિજિટલ પિન સોંપીને છે. આ કિસ્સામાં, દરેક સેન્સર માટે 4.7kΩ પુલ-અપ રેઝિસ્ટરની જરૂર પડશે.

અહીં અમે તમને વિવિધ પિન પર જોડાયેલા બે સેન્સર સાથે કેવી રીતે કામ કરવું તેનું ઉદાહરણ બતાવીએ છીએ:

#include <OneWire.h>  #include <DallasTemperature.h>  OneWire ds1(2); OneWire ds2(3);  DallasTemperature sensors1(&ds1); DallasTemperature sensors2(&ds2); void setup() {   Serial.begin(9600);   sensors1.begin();   sensors2.begin(); } void loop() {   sensors1.requestTemperatures();   float temp1 = sensors1.getTempCByIndex(0);   sensors2.requestTemperatures();   float temp2 = sensors2.getTempCByIndex(0);   Serial.print("Temperatura 1 = ");   Serial.print(temp1);   Serial.print(" °C   Temperatura 2 = ");   Serial.println(temp2);   delay(1000); }

ઉદાહરણ 3: એક જ પિન સાથે જોડાયેલા બહુવિધ સેન્સર

એક પ્રોજેક્ટમાં ઘણાબધા DS18B20 ને કનેક્ટ કરવાની બીજી શક્યતા એ છે કે તે બધા માટે એક જ પિન અને સમાન 1-વાયર બસનો ઉપયોગ કરીને આમ કરવું. આ કિસ્સામાં, દરેક સેન્સર પાસે તેનું હોવું આવશ્યક છે અનન્ય ઓળખ નંબર, જે ફેક્ટરીમાં સોંપેલ છે. અહીં અમે નીચેના કોડનો ઉપયોગ કરીને તે સરનામાં કેવી રીતે મેળવવા તે સમજાવીએ છીએ:

#include <OneWire.h> OneWire ds(2); void setup(void) {   Serial.begin(9600); } void loop(void) {   byte address[8];   if (!ds.search(address)) {     Serial.println("No more addresses.");     ds.reset_search();     delay(250);     return;   }   Serial.print("Address: ");   for (int i = 0; i < 8; i++) {     Serial.print(address[i], HEX);     if (i < 7) Serial.print(", ");   }   Serial.println();   delay(250); }

એકવાર તમારી પાસે બધા સેન્સરના સરનામાંઓ થઈ જાય, પછી તમે વિશિષ્ટ સેન્સરને તેના અનન્ય સરનામાંનો ઉપયોગ કરીને વાંચી શકો છો. નીચેનો કોડ તમને બતાવે છે કે તે કેવી રીતે કરવું:

#include <DallasTemperature.h>  OneWire ds(2);  DallasTemperature sensors(&ds);  DeviceAddress sensor1 = {0x28, 0xFF, 0xCA, 0x4A, 0x5, 0x16, 0x3, 0xBD}; DeviceAddress sensor2 = {0x28, 0xFF, 0x89, 0x3A, 0x1, 0x16, 0x4, 0xAF};  void setup() {   Serial.begin(9600);   sensors.begin(); } void loop() {   sensors.requestTemperatures();   float temp1 = sensors.getTempC(sensor1);   float temp2 = sensors.getTempC(sensor2);   Serial.print("Temp sensor 1: ");   Serial.println(temp1);   Serial.print("Temp sensor 2: ");   Serial.println(temp2);   delay(1000); }

આ પદ્ધતિના ફાયદા એ છે કે તમે Arduino પર પિન સાચવો છો અને તમે એક જ ડેટા બસની સમાંતરમાં ઘણા સેન્સરને કનેક્ટ કરી શકો છો.

આ ઉદાહરણો સાથે, તમે DS18B20 સેન્સરની વૈવિધ્યતા અને શક્તિ જોઈ શકો છો. તે અમલમાં મૂકવું ખૂબ જ સરળ છે, અને જો તમારે બહુવિધ સેન્સરને કનેક્ટ કરવાની જરૂર હોય, તો તમારી પાસે તેને અલગ અલગ રીતે કરવા માટે સંપૂર્ણ સુગમતા છે. તાપમાન માપવા માટે DS18B20 એ સૌથી વિશ્વસનીય સેન્સર છે, અને તેના ઓછા પાવર વપરાશ અને સરળ પ્રોગ્રામિંગને કારણે તે તમામ પ્રકારના પ્રોજેક્ટ્સ માટે યોગ્ય છે.

DS18B20 સેન્સર માત્ર Arduino સાથે વાપરવા માટે સરળ નથી, પરંતુ તેનો ઉપયોગ ઔદ્યોગિક અને રહેણાંક કાર્યક્રમોની વિશાળ શ્રેણીમાં પણ થઈ શકે છે જેમ કે એર કન્ડીશનીંગ સિસ્ટમ, મશીનરી અથવા તો ગ્રીનહાઉસમાં તાપમાનનું નિરીક્ષણ.


ટિપ્પણી કરવા માટે સૌ પ્રથમ બનો

તમારી ટિપ્પણી મૂકો

તમારું ઇમેઇલ સરનામું પ્રકાશિત કરવામાં આવશે નહીં. આવશ્યક ક્ષેત્રો સાથે ચિહ્નિત થયેલ છે *

*

*

  1. ડેટા માટે જવાબદાર: મિગ્યુએલ gelંજેલ ગેટóન
  2. ડેટાનો હેતુ: નિયંત્રણ સ્પામ, ટિપ્પણી સંચાલન.
  3. કાયદો: તમારી સંમતિ
  4. ડેટાની વાતચીત: કાયદાકીય જવાબદારી સિવાય ડેટા તૃતીય પક્ષને આપવામાં આવશે નહીં.
  5. ડેટા સ્ટોરેજ: cસેન્ટસ નેટવર્ક્સ (ઇયુ) દ્વારા હોસ્ટ કરેલો ડેટાબેઝ
  6. અધિકાર: કોઈપણ સમયે તમે તમારી માહિતીને મર્યાદિત, પુન recoverપ્રાપ્ત અને કા deleteી શકો છો.