ዝርዝር ሁኔታ:
ቪዲዮ: አርዱዲኖ ናኖ - HTS221 አንጻራዊ እርጥበት እና የሙቀት ዳሳሽ አጋዥ ስልጠና 4 ደረጃዎች
2024 ደራሲ ደራሲ: John Day | [email protected]. ለመጨረሻ ጊዜ የተሻሻለው: 2024-01-30 07:30
HTS221 አንፃራዊ እርጥበት እና የሙቀት መጠን እጅግ በጣም የታመቀ አቅም ያለው ዲጂታል ዳሳሽ ነው። የመለኪያ መረጃን በዲጂታል ተከታታይ በይነገጾች በኩል ለማቅረብ የስሜት ሕዋስ እና የተቀላቀለ የምልክት ትግበራ የተወሰነ የተቀናጀ ወረዳ (ASIC) ያካትታል። ከብዙ ባህሪዎች ጋር የተዋሃደ ይህ ለአስፈላጊ እርጥበት እና የሙቀት መለኪያዎች በጣም ተገቢ ከሆኑ ዳሳሾች አንዱ ነው። ከአርዱዲኖ ናኖ ጋር ሰልፉ እዚህ አለ።
ደረጃ 1: እርስዎ የሚፈልጉት..
1. አርዱዲኖ ናኖ
2. HTS221
3. I²C ኬብል
4. I²C ጋሻ ለአርዱዲኖ ናኖ
ደረጃ 2: ግንኙነቶች
ለአርዱዲኖ ናኖ የ I2C ጋሻ ይውሰዱ እና በናኖ ፒኖች ላይ በቀስታ ይግፉት።
ከዚያ የ I2C ገመድ አንዱን ጫፍ ከ HTS221 ዳሳሽ እና ሌላውን ከ I2C ጋሻ ጋር ያገናኙ።
ግንኙነቶች ከላይ በስዕሉ ላይ ይታያሉ።
ደረጃ 3 ኮድ
የ HTS221 አርዱinoኖ ኮድ ከ github ማከማቻችን- DCUBE ማህበረሰብ ማውረድ ይችላል።
ለተመሳሳይ አገናኝ እዚህ አለ
github.com/DcubeTechVentures/HTS221/blob/master/Arduino/HTS221.ino
ከአርዲኖ ቦርድ ጋር የአነፍናፊውን I2c ግንኙነት ለማመቻቸት ቤተመጽሐፍት Wire.h ን እናካትታለን።
እንዲሁም ኮዱን ከዚህ መገልበጥ ይችላሉ ፣ እሱ እንደሚከተለው ተሰጥቷል
// በነፃ ፈቃድ ፈቃድ ተሰራጭቷል።
// በተጓዳኝ ሥራዎቹ ፈቃዶች ውስጥ የሚስማማ ከሆነ በፈለጉት ፣ በትርፍም ሆነ በነጻ ይጠቀሙበት።
// HTS221
// ይህ ኮድ ከ HTS221_I2CS I2C ሚኒ ሞዱል ጋር ለመስራት የተነደፈ ነው
#ያካትቱ
// HTS221 I2C አድራሻ 0x5F ነው
#መግለፅ Addr 0x5F
ባዶነት ማዋቀር ()
{
// የ I2C ግንኙነትን እንደ ማስተር ማስጀመር
Wire.begin ();
// ተከታታይ ግንኙነቶችን ያስጀምሩ ፣ የባውድ መጠን = 9600 ያዘጋጁ
Serial.begin (9600);
// I2C ማስተላለፍን ይጀምሩ
Wire.begin ማስተላለፊያ (Addr);
// አማካይ የውቅረት መመዝገቢያ ይምረጡ
Wire.write (0x10);
// የሙቀት አማካይ ናሙናዎች = 256 ፣ የእርጥበት አማካይ ናሙናዎች = 512
Wire.write (0x1B);
// I2C ማስተላለፍን ያቁሙ
Wire.endTransmission ();
// I2C ማስተላለፍን ይጀምሩ
Wire.begin ማስተላለፊያ (Addr);
// የቁጥጥር መመዝገቢያ ይምረጡ 1
Wire.write (0x20);
// ኃይል በርቷል ፣ ቀጣይነት ያለው ዝመና ፣ የውሂብ ውፅዓት መጠን = 1 Hz
Wire.write (0x85);
// I2C ማስተላለፍን ያቁሙ
Wire.endTransmission ();
መዘግየት (300);
}
ባዶነት loop ()
{
ያልተፈረመ int ውሂብ [2];
ያልተፈረመ int val [4];
ያልተፈረመ int H0 ፣ H1 ፣ H2 ፣ H3 ፣ T0 ፣ T1 ፣ T2 ፣ T3 ፣ ጥሬ;
// የእርጥበት መለወጫ እሴቶች
ለ (int i = 0; i <2; i ++)
{
// I2C ማስተላለፍን ይጀምሩ
Wire.begin ማስተላለፊያ (Addr);
// የውሂብ መመዝገቢያ ይላኩ
Wire.write ((48 + i));
// I2C ማስተላለፍን ያቁሙ
Wire.endTransmission ();
// የውሂብ 1 ባይት ይጠይቁ
Wire.requestFrom (Addr, 1);
// 1 ባይት ውሂብ ያንብቡ
ከሆነ (Wire.available () == 1)
{
ውሂብ = Wire.read ();
}
}
// የእርጥበት መረጃን ይለውጡ
H0 = ውሂብ [0] / 2;
H1 = ውሂብ [1] / 2;
ለ (int i = 0; i <2; i ++)
{
// I2C ማስተላለፍን ይጀምሩ
Wire.begin ማስተላለፊያ (Addr);
// የውሂብ መመዝገቢያ ይላኩ
Wire.write ((54 + i));
// I2C ማስተላለፍን ያቁሙ
Wire.endTransmission ();
// የውሂብ 1 ባይት ይጠይቁ
Wire.requestFrom (Addr, 1);
// 1 ባይት ውሂብ ያንብቡ
ከሆነ (Wire.available () == 1)
{
ውሂብ = Wire.read ();
}
}
// የእርጥበት መረጃን ይለውጡ
H2 = (ውሂብ [1] * 256.0) + ውሂብ [0];
ለ (int i = 0; i <2; i ++)
{
// I2C ማስተላለፍን ይጀምሩ
Wire.begin ማስተላለፊያ (Addr);
// የውሂብ መመዝገቢያ ይላኩ
Wire.write ((58 + i));
// I2C ማስተላለፍን ያቁሙ
Wire.endTransmission ();
// የውሂብ 1 ባይት ይጠይቁ
Wire.requestFrom (Addr, 1);
// 1 ባይት ውሂብ ያንብቡ
ከሆነ (Wire.available () == 1)
{
ውሂብ = Wire.read ();
}
}
// የእርጥበት መረጃን ይለውጡ
H3 = (ውሂብ [1] * 256.0) + ውሂብ [0];
// የሙቀት መጠቆሚያ እሴቶች
// I2C ማስተላለፍን ይጀምሩ
Wire.begin ማስተላለፊያ (Addr);
// የውሂብ መመዝገቢያ ይላኩ
Wire.write (0x32);
// I2C ማስተላለፍን ያቁሙ
Wire.endTransmission ();
// የውሂብ 1 ባይት ይጠይቁ
Wire.requestFrom (Addr, 1);
// 1 ባይት ውሂብ ያንብቡ
ከሆነ (Wire.available () == 1)
{
T0 = Wire.read ();
}
// I2C ማስተላለፍን ይጀምሩ
Wire.begin ማስተላለፊያ (Addr);
// የውሂብ መመዝገቢያ ይላኩ
Wire.write (0x33);
// I2C ማስተላለፍን ያቁሙ
Wire.endTransmission ();
// የውሂብ 1 ባይት ይጠይቁ
Wire.requestFrom (Addr, 1);
// 1 ባይት ውሂብ ያንብቡ
ከሆነ (Wire.available () == 1)
{
T1 = Wire.read ();
}
// I2C ማስተላለፍን ይጀምሩ
Wire.begin ማስተላለፊያ (Addr);
// የውሂብ መመዝገቢያ ይላኩ
Wire.write (0x35);
// I2C ማስተላለፍን ያቁሙ
Wire.endTransmission ();
// የውሂብ 1 ባይት ይጠይቁ
Wire.requestFrom (Addr, 1);
// 1 ባይት ውሂብ ያንብቡ
ከሆነ (Wire.available () == 1)
{
ጥሬ = Wire.read ();
}
ጥሬ = ጥሬ & 0x0F;
// የሙቀት መጠኑን እሴቶችን ወደ 10-ቢት ይለውጡ
T0 = ((ጥሬ & 0x03) * 256) + T0;
T1 = ((ጥሬ & 0x0C) * 64) + T1;
ለ (int i = 0; i <2; i ++)
{
// I2C ማስተላለፍን ይጀምሩ
Wire.begin ማስተላለፊያ (Addr);
// የውሂብ መመዝገቢያ ይላኩ
Wire.write ((60 + i));
// I2C ማስተላለፍን ያቁሙ
Wire.endTransmission ();
// የውሂብ 1 ባይት ይጠይቁ
Wire.requestFrom (Addr, 1);
// 1 ባይት ውሂብ ያንብቡ
ከሆነ (Wire.available () == 1)
{
ውሂብ = Wire.read ();
}
}
// ውሂቡን ይለውጡ
T2 = (ውሂብ [1] * 256.0) + ውሂብ [0];
ለ (int i = 0; i <2; i ++)
{
// I2C ማስተላለፍን ይጀምሩ
Wire.begin ማስተላለፊያ (Addr);
// የውሂብ መመዝገቢያ ይላኩ
Wire.write ((62 + i));
// I2C ማስተላለፍን ያቁሙ
Wire.endTransmission ();
// የውሂብ 1 ባይት ይጠይቁ
Wire.requestFrom (Addr, 1);
// 1 ባይት ውሂብ ያንብቡ
ከሆነ (Wire.available () == 1)
{
ውሂብ = Wire.read ();
}
}
// ውሂቡን ይለውጡ
T3 = (ውሂብ [1] * 256.0) + ውሂብ [0];
// I2C ማስተላለፍን ይጀምሩ
Wire.begin ማስተላለፊያ (Addr);
// የውሂብ መመዝገቢያ ይላኩ
Wire.write (0x28 | 0x80);
// I2C ማስተላለፍን ያቁሙ
Wire.endTransmission ();
// 4 ባይት ውሂብን ይጠይቁ
Wire.requestFrom (Addr, 4);
// 4 ባይት መረጃዎችን ያንብቡ
// እርጥበት msb ፣ እርጥበት lsb ፣ temp msb ፣ temp lsb
ከሆነ (Wire.available () == 4)
{
val [0] = Wire.read ();
val [1] = Wire.read ();
val [2] = Wire.read ();
val [3] = Wire.read ();
}
// ውሂቡን ይለውጡ
ተንሳፋፊ እርጥበት = (ቫል [1] * 256.0) + ቫል [0];
እርጥበት = ((1.0 * H1) - (1.0 * H0)) * (1.0 * እርጥበት - 1.0 * H2) / (1.0 * H3 - 1.0 * H2) + (1.0 * H0);
int temp = (val [3] * 256) + val [2];
ተንሳፋፊ cTemp = (((T1 - T0) / 8.0) * (temp - T2)) / (T3 - T2) + (T0 / 8.0);
ተንሳፋፊ fTemp = (cTemp * 1.8) + 32;
// የውጤት መረጃን ወደ ተከታታይ ማሳያ
Serial.print ("አንጻራዊ እርጥበት:");
Serial.print (እርጥበት);
Serial.println (" % RH");
Serial.print ("የሙቀት መጠን በሴልሲየስ");
Serial.print (cTemp); Serial.println ("C");
Serial.print ("ፋራናይት ውስጥ ያለው ሙቀት:");
Serial.print (fTemp);
Serial.println ("F");
መዘግየት (500);
}
ደረጃ 4: ማመልከቻዎች
HTS221 እንደ አየር እርጥበት እና ማቀዝቀዣዎች ባሉ የተለያዩ የሸማቾች ምርቶች ውስጥ ሊሠራ ይችላል። ይህ አነፍናፊ ስማርት የቤት አውቶማቲክን ፣ የኢንዱስትሪ አውቶማቲክን ፣ የመተንፈሻ መሣሪያዎችን ፣ የንብረት እና የእቃዎችን መከታተያ ጨምሮ በሰፊው ሜዳ ውስጥ መተግበሪያውን ያገኛል።
የሚመከር:
Raspberry Pi SHT25 እርጥበት እና የሙቀት ዳሳሽ ፓይዘን አጋዥ ስልጠና 4 ደረጃዎች
Raspberry Pi SHT25 እርጥበት እና የሙቀት ዳሳሽ ፓይዘን አጋዥ ስልጠና - SHT25 I2C እርጥበት እና የሙቀት ዳሳሽ ± 1.8%RH ± 0.2 ° ሴ I2C ሚኒ ሞዱል። የ SHT25 ከፍተኛ ትክክለኛነት እርጥበት እና የሙቀት ዳሳሽ የተስተካከለ ፣ መስመራዊ አነፍናፊ ሲግናን በማቅረብ ከቅርጽ ሁኔታ እና ከማሰብ አንፃር የኢንዱስትሪ ደረጃ ሆኗል
አርዱዲኖ AMS5812_0050-ዲ-ቢ ግፊት እና የሙቀት ዳሳሽ አጋዥ ስልጠና 4 ደረጃዎች
አርዱዲኖ AMS5812_0050-ዲ-ቢ ግፊት እና የሙቀት ዳሳሽ አጋዥ ስልጠና-AMS5812 የተጠናከረ የግፊት ዳሳሽ ከአናሎግ እና ዲጂታል ውጤቶች ጋር ከአናሎግ የቮልቴጅ ውፅዓት እና ከዲጂታል I2C በይነገጽ ጋር ከፍተኛ ትክክለኛ ዳሳሽ ነው። እሱ ለሥራው የምልክት ማስተካከያ ኤለመንት ካለው የፓይዞራይዜሽን ዳሳሽ አካል ጋር ያጣምራል።
አርዱዲኖ ናኖ - SI7050 የሙቀት ዳሳሽ አጋዥ ስልጠና - 4 ደረጃዎች
አርዱዲኖ ናኖ - SI7050 የሙቀት ዳሳሽ አጋዥ ስልጠና - SI7050 በ I2C የግንኙነት ፕሮቶኮል ላይ የሚሠራ እና በጠቅላላው የአሠራር voltage ልቴጅ እና የሙቀት ክልል ላይ ከፍተኛ ትክክለኛነትን የሚያቀርብ ዲጂታል የሙቀት ዳሳሽ ነው። ይህ የአነፍናፊው ከፍተኛ ትክክለኝነት በልብ ወለድ የምልክት ማቀነባበር እና በፊንጢጣ
አርዱዲኖ ናኖ - TCN75A የሙቀት ዳሳሽ አጋዥ ስልጠና 4 ደረጃዎች
አርዱዲኖ ናኖ-TCN75A የሙቀት ዳሳሽ አጋዥ ስልጠና-TCN75A ከሙቀት-ወደ-ዲጂታል መቀየሪያ ጋር የተካተተ ባለ ሁለት ሽቦ ተከታታይ የሙቀት ዳሳሽ ነው። እሱ ለሙቀት-አነቃቂ ትግበራዎች ተጣጣፊነትን ከሚሰጡ በተጠቃሚ ሊመዘገቡ ከሚችሉ መመዝገቢያዎች ጋር ተካትቷል። የመመዝገቢያ ቅንብሮች ለተጠቃሚዎች ይፈቅዳሉ
Raspberry Pi - HIH6130 I2C እርጥበት እና የሙቀት ዳሳሽ የ Python አጋዥ ስልጠና 4 ደረጃዎች
Raspberry Pi - HIH6130 I2C እርጥበት እና የሙቀት ዳሳሽ ፓይዘን አጋዥ ስልጠና - HIH6130 ከዲጂታል ውፅዓት ጋር የእርጥበት እና የሙቀት ዳሳሽ ነው። እነዚህ ዳሳሾች የ ± 4% አርኤች ትክክለኛነት ደረጃ ይሰጣሉ። በኢንዱስትሪ በሚመራ የረጅም ጊዜ መረጋጋት ፣ በእውነተኛ የሙቀት መጠን ማካካሻ ዲጂታል I2C ፣ ኢንዱስትሪ መሪ አስተማማኝነት ፣ የኢነርጂ ውጤታማነት