Агуулгын хүснэгт:
- Алхам 1: Шаардлагатай тоног төхөөрөмж:
- Алхам 2: Тоног төхөөрөмжийн холболт:
- Алхам 3: Соронзон орны эрчмийг хэмжих Arduino код:
- Алхам 4: Өргөдөл:
Видео: HMC5883 ба Arduino Nano ашиглан соронзон орны хэмжилт: 4 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:01
HMC5883 бол бага талбайн соронзон мэдрэх зориулалттай дижитал луужин юм. Энэхүү төхөөрөмж нь өргөн соронзон орны хүрээтэй +/- 8 Oe ба гаралтын хурд нь 160 Гц юм. HMC5883 мэдрэгч нь луужингийн чиглэлийг 1 ° -аас 2 ° хүртэл нарийвчлах боломжийг олгодог автомат унтраах драйвер, офсет цуцлах, 12 битийн ADC зэргийг багтаасан болно. Бүх I²C мини модулиуд нь 5VDC дээр ажиллах зориулалттай.
Энэхүү гарын авлагад бид HMC5883 -ийн Arduino нанотой хийсэн нарийвчилсан ажлын талаар тайлбарлах болно.
Алхам 1: Шаардлагатай тоног төхөөрөмж:
Зорилгодоо хүрэхийн тулд бидэнд шаардлагатай материалууд нь дараахь тоног төхөөрөмжийн бүрэлдэхүүн хэсгүүдийг агуулдаг.
1. HMC5883
2. Ардуино Нано
3. I2C кабель
4. Arduino Nano -д зориулсан I2C бамбай
Алхам 2: Тоног төхөөрөмжийн холболт:
Тоног төхөөрөмжийн холболтын хэсэг нь үндсэндээ мэдрэгч ба arduino нано хооронд шаардлагатай утас холболтыг тайлбарладаг. Аливаа систем дээр ажиллахад шаардлагатай гаралтын хувьд зөв холболтыг хангах нь хамгийн чухал зүйл юм. Тиймээс шаардлагатай холболтууд дараах байдалтай байна.
HMC5883 нь I2C дээр ажиллах болно. Мэдрэгчийн интерфэйс бүрийг хэрхэн яаж холбохыг харуулсан утасны диаграмын жишээ энд байна.
Хайрцагнаас гадуурх самбар нь I2C интерфэйс дээр тохируулагдсан байдаг тул хэрэв та өөр ойлголтгүй бол энэ холболтыг ашиглахыг зөвлөж байна. Танд ердөө дөрвөн утас л хангалттай!
Vcc, Gnd, SCL, SDA зүүг зөвхөн дөрвөн холболт шаарддаг бөгөөд эдгээр нь I2C кабелийн тусламжтайгаар холбогддог.
Эдгээр холболтыг дээрх зурган дээр харуулав.
Алхам 3: Соронзон орны эрчмийг хэмжих Arduino код:
Одоо Arduino кодоор эхэлье.
Arduino -тай мэдрэгчийн модулийг ашиглахдаа бид Wire.h номын санг агуулдаг. "Утас" номын сан нь мэдрэгч ба Arduino самбар хоорондын i2c холболтыг хөнгөвчлөх функцүүдийг агуулдаг.
Хэрэглэгчийн тав тухыг хангах үүднээс Arduino кодыг бүхэлд нь доор өгөв.
#оруулах
// HMC5883 I2C хаяг нь 0x1E (30)
#тодорхойлох Addr 0x1E
хүчингүй тохиргоо ()
{
// I2C холболтыг MASTER болгон эхлүүлэх
Wire.begin ();
// Цуваа холбоог эхлүүлэх, дамжуулах хурд = 9600
Цуваа эхлэх (9600);
// I2C дамжуулалтыг эхлүүлэх
Wire.beginTransmission (Addr);
// А тохируулах регистрийг сонгоно уу
Wire.write (0x00);
// Хэмжлийн ердийн тохиргоог тохируулах, өгөгдлийн гаралтын хурд = 0.75 Гц
Wire.write (0x60);
// I2C дамжуулалтыг зогсоох
Wire.endTransmission ();
// I2C дамжуулалтыг эхлүүлэх
Wire.beginTransmission (Addr);
// Mode бүртгэлийг сонгоно уу
Wire.write (0x02);
// Тасралтгүй хэмжилтийг тохируулах
Wire.write (0x00);
// I2C дамжуулалтыг зогсоох
Wire.endTransmission ();
саатал (300);
}
хоосон давталт ()
{
гарын үсэг зураагүй int өгөгдөл [6];
// I2C дамжуулалтыг эхлүүлэх
Wire.beginTransmission (Addr);
// Өгөгдлийн бүртгэлийг сонгоно уу
Wire.write (0x03);
// I2C дамжуулалтыг зогсоох
Wire.endTransmission ();
// 6 байтын өгөгдөл хүсэх
Wire.requestFrom (Addr, 6);
// 6 байтын өгөгдлийг уншина уу
// xMag msb, xMag lsb, zMag msb, zMag lsb, yMag msb, yMag lsb
хэрэв (Утас. боломжтой () == 6)
{
өгөгдөл [0] = Wire.read ();
өгөгдөл [1] = Wire.read ();
өгөгдөл [2] = Wire.read ();
өгөгдөл [3] = Wire.read ();
өгөгдөл [4] = Wire.read ();
өгөгдөл [5] = Wire.read ();
}
саатал (300);
// Өгөгдлийг хөрвүүлэх
int xMag = ((өгөгдөл [0] * 256) + өгөгдөл [1]);
int zMag = ((өгөгдөл [2] * 256) + өгөгдөл [3]);
int yMag = ((өгөгдөл [4] * 256) + өгөгдөл [5]);
// Өгөгдлийг цуваа монитор руу гаргадаг
Serial.print ("X-Axis дахь соронзон орон:");
Serial.println (xMag);
Serial.print ("Y тэнхлэг дэх соронзон орон:");
Serial.println (yMag);
Serial.print ("Z-Axis дахь соронзон орон:");
Serial.println (zMag);
саатал (300);
}
Утасны санд Wire.write () ба Wire.read () командыг бичиж, мэдрэгчийн гаралтыг уншихад ашиглагддаг. Кодын дараах хэсэгт мэдрэгчийн гаралтын уншилтыг харуулав.
// 6 байтын өгөгдлийг уншина уу // xMag msb, xMag lsb, zMag msb, zMag lsb, yMag msb, yMag lsb if (Wire.available () == 6) {data [0] = Wire.read (); өгөгдөл [1] = Wire.read (); өгөгдөл [2] = Wire.read (); өгөгдөл [3] = Wire.read (); өгөгдөл [4] = Wire.read (); өгөгдөл [5] = Wire.read (); }
Arduino IDE -ийн цуваа дэлгэц дээр мэдрэгчийн гаралтыг харуулахад Serial.print () ба Serial.println () ашиглагддаг.
Мэдрэгчийн гаралтыг дээрх зурагт үзүүлэв.
Алхам 4: Өргөдөл:
HMC5883 нь бага өртөгтэй луужин, соронзон хэмжилт гэх мэт дижитал интерфэйстэй бага талбайн соронзон мэдрэх зориулалттай гадаргуу дээр суурилуулсан, олон чип модуль юм. Нэгээс хоёр градусын өндөр нарийвчлал, нарийвчлал нь явган хүний навигаци болон LBS програмыг идэвхжүүлдэг.
Зөвлөмж болгож буй:
HMC5883 ба Raspberry Pi ашиглан соронзон орны хэмжилт: 4 алхам
HMC5883 ба Raspberry Pi ашиглан соронзон орны хэмжилт: HMC5883 нь бага талбайн соронзон мэдрэх зориулалттай дижитал луужин юм. Энэхүү төхөөрөмж нь өргөн соронзон орны хүрээтэй +/- 8 Oe ба гаралтын хурд нь 160 Гц юм. HMC5883 мэдрэгч нь унтраах автомат оосор жолооч, офсет цуцлах
HMC5883 ба бөөмийн фотон ашиглан соронзон орны хэмжилт: 4 алхам
HMC5883 ба бөөмийн фотон ашиглан соронзон орны хэмжилт: HMC5883 нь бага талбайн соронзон мэдрэх зориулалттай дижитал луужин юм. Энэхүү төхөөрөмж нь өргөн соронзон орны хүрээтэй +/- 8 Oe ба гаралтын хурд нь 160 Гц юм. HMC5883 мэдрэгч нь унтраах автомат оосор жолооч, офсет цуцлах
Цахилгаан соронзон орны микрофон: 5 алхам
Цахилгаан соронзон орны микрофон: Цахилгаан соронзон микрофон бол дууны дизайнер, хөгжмийн зохиолч, хобби сонирхогчдын (эсвэл хий үзэгчид) уламжлалт бус хэрэгсэл юм. Энэ бол цахилгаан соронзон орон (EMF) -ийг дуут дуу болгон хувиргахын тулд индукцийн ороомог ашигладаг энгийн төхөөрөмж юм. Тэнд байна
Arduino Milligaussmeter - Соронзон хэмжилт: 4 алхам
Arduino Milligaussmeter - Соронзон хэмжилт: Хүчтэй соронзыг онгоцонд тээвэрлэх боломжтой юу? Бид маш олон соронз тээвэрлэдэг бөгөөд соронзон материалыг, ялангуяа онгоцоор тээвэрлэх тодорхой дүрэм журам байдаг. Энэхүү нийтлэлд бид хэрхэн агаарын тээвэрлэлт хийх өөрийн миллигауссметр хийх талаар судлах болно
3 тэнхлэгтэй соронзон орны мэдрэгч: 10 алхам (зурагтай)
3 тэнхлэгтэй соронзон орны мэдрэгч: Утасгүй цахилгаан дамжуулах систем нь уламжлалт утастай цэнэглэгчийг орлуулахад сайн байна. Жижиг биоанагаахын суулгацаас эхлээд асар том цахилгаан машинуудыг утасгүй цэнэглэх хүртэл. Утасгүй эрчим хүчний талаархи судалгааны салшгүй хэсэг нь