![მაგნიტური ველის გაზომვა HMC5883 და არდუინო ნანოს გამოყენებით: 4 ნაბიჯი მაგნიტური ველის გაზომვა HMC5883 და არდუინო ნანოს გამოყენებით: 4 ნაბიჯი](https://i.howwhatproduce.com/images/004/image-10147-j.webp)
Სარჩევი:
2025 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2025-01-23 14:50
![Image Image](https://i.howwhatproduce.com/images/004/image-10147-2-j.webp)
![](https://i.ytimg.com/vi/st6MFpw2dGA/hqdefault.jpg)
HMC5883 არის ციფრული კომპასი, რომელიც შექმნილია დაბალი ველის მაგნიტური აღქმისთვის. ამ მოწყობილობას აქვს მაგნიტური ველის ფართო დიაპაზონი +/- 8 Oe და გამომავალი სიჩქარე 160 ჰც. HMC5883 სენსორი მოიცავს სამაგრების ავტომატური გათიშვის დრაივერებს, ოფსეტური გაუქმებით და 12 ბიტიანი ADC, რომელიც კომპასის სათაურის სიზუსტეს 1 ° -დან 2 ° -მდე იძლევა. ყველა I²C მინი მოდული შექმნილია 5VDC- ზე მუშაობისთვის.
ამ გაკვეთილში ჩვენ ვაპირებთ ავუხსნათ HMC5883– ის დეტალური მუშაობა არდუინო ნანოსთან.
ნაბიჯი 1: საჭირო აპარატურა:
![საჭირო აპარატურა საჭირო აპარატურა](https://i.howwhatproduce.com/images/004/image-10147-3-j.webp)
![საჭირო აპარატურა საჭირო აპარატურა](https://i.howwhatproduce.com/images/004/image-10147-4-j.webp)
![საჭირო აპარატურა საჭირო აპარატურა](https://i.howwhatproduce.com/images/004/image-10147-5-j.webp)
მასალები, რომლებიც ჩვენ გვჭირდება ჩვენი მიზნის მისაღწევად, მოიცავს შემდეგ ტექნიკურ კომპონენტებს:
1. HMC5883
2. არდუინო ნანო
3. I2C კაბელი
4. I2C ფარი არდუინო ნანოსთვის
ნაბიჯი 2: აპარატურის დაკავშირება:
![აპარატურის დაკავშირება აპარატურის დაკავშირება](https://i.howwhatproduce.com/images/004/image-10147-6-j.webp)
![აპარატურის დაკავშირება აპარატურის დაკავშირება](https://i.howwhatproduce.com/images/004/image-10147-7-j.webp)
აპარატურის დაკავშირების განყოფილება ძირითადად განმარტავს გაყვანილობის კავშირებს სენსორსა და არდუინო ნანოს შორის. სწორი კავშირების უზრუნველყოფა არის ძირითადი აუცილებლობა ნებისმიერ სისტემაზე მუშაობისას სასურველი გამომუშავებისთვის. ამრიგად, საჭირო კავშირები შემდეგია:
HMC5883 იმუშავებს I2C– ზე. აქ არის გაყვანილობის დიაგრამა, რომელიც აჩვენებს, თუ როგორ უნდა დააკავშიროთ სენსორის თითოეული ინტერფეისი.
ყუთის გარეშე, დაფა კონფიგურირებულია I2C ინტერფეისისთვის, ამიტომ ჩვენ გირჩევთ გამოიყენოთ ეს კავშირი, თუ სხვაგვარად ხართ აგნოსტიკოსი. ყველაფერი რაც თქვენ გჭირდებათ არის ოთხი მავთული!
მხოლოდ ოთხი კავშირია საჭირო Vcc, Gnd, SCL და SDA ქინძისთავები და ეს დაკავშირებულია I2C კაბელის დახმარებით.
ეს კავშირები ნაჩვენებია ზემოთ მოცემულ სურათებში.
ნაბიჯი 3: Arduino კოდი მაგნიტური ველის ინტენსივობის გასაზომად:
![არდუინოს კოდი მაგნიტური ველის ინტენსივობის გასაზომად არდუინოს კოდი მაგნიტური ველის ინტენსივობის გასაზომად](https://i.howwhatproduce.com/images/004/image-10147-8-j.webp)
![არდუინოს კოდი მაგნიტური ველის ინტენსივობის გასაზომად არდუინოს კოდი მაგნიტური ველის ინტენსივობის გასაზომად](https://i.howwhatproduce.com/images/004/image-10147-9-j.webp)
დავიწყოთ არდუინოს კოდით ახლა.
Arduino– სთან ერთად სენსორული მოდულის გამოყენებისას, ჩვენ მოიცავს Wire.h ბიბლიოთეკას. "მავთულის" ბიბლიოთეკა შეიცავს ფუნქციებს, რომლებიც ხელს უწყობს სენსორსა და არდუინოს დაფას შორის i2c კომუნიკაციას.
მთელი Arduino კოდი მოცემულია მომხმარებლის კომფორტისთვის ქვემოთ:
#ჩართეთ
// HMC5883 I2C მისამართი არის 0x1E (30)
#განსაზღვრეთ Addr 0x1E
ბათილად დაყენება ()
{
// I2C კომუნიკაციის ინიციალიზაცია, როგორც MASTER
Wire.begin ();
// სერიული კომუნიკაციის ინიციალიზაცია, დაყენებული baud განაკვეთი = 9600
სერიული.დაწყება (9600);
// დაიწყეთ I2C გადაცემა
Wire.beginTransmission (Addr);
// აირჩიეთ კონფიგურაციის რეგისტრი A
Wire.write (0x00);
// ნორმალური გაზომვის კონფიგურაციის დაყენება, მონაცემთა გამომავალი სიჩქარე = 0.75 ჰც
Wire.write (0x60);
// შეაჩერე I2C გადაცემა
Wire.endTransmission ();
// დაიწყეთ I2C გადაცემა
Wire.beginTransmission (Addr);
// აირჩიეთ რეგისტრაციის რეჟიმი
Wire.write (0x02);
// უწყვეტი გაზომვის დაყენება
Wire.write (0x00);
// შეაჩერე I2C გადაცემა
Wire.endTransmission ();
დაგვიანება (300);
}
ბათილი მარყუჟი ()
{
ხელმოუწერელი int მონაცემები [6];
// დაიწყეთ I2C გადაცემა
Wire.beginTransmission (Addr);
// მონაცემთა რეგისტრაციის არჩევა
Wire.write (0x03);
// შეაჩერე I2C გადაცემა
Wire.endTransmission ();
// მოითხოვეთ მონაცემების 6 ბაიტი
მავთული. მოთხოვნა (Addr, 6);
// წაიკითხეთ მონაცემების 6 ბაიტი
// xMag msb, xMag lsb, zMag msb, zMag lsb, yMag msb, yMag lsb
თუ (Wire. Available () == 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- ღერძში:");
Serial.println (xMag);
Serial.print ("მაგნიტური ველი Y- ღერძში:");
Serial.println (yMag);
Serial.print ("მაგნიტური ველი Z- ღერძში:");
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 (); }
Serial.print () და Serial.println () გამოიყენება Arduino IDE– ის სერიულ მონიტორზე სენსორის გამომუშავების საჩვენებლად.
სენსორის გამოსავალი ნაჩვენებია ზემოთ მოცემულ სურათზე.
ნაბიჯი 4: პროგრამები:
![პროგრამები პროგრამები](https://i.howwhatproduce.com/images/004/image-10147-10-j.webp)
HMC5883 არის ზედაპირზე დასაყენებელი, მრავალ ჩიპიანი მოდული, რომელიც განკუთვნილია დაბალი ველის მაგნიტური ზონდირებისათვის ციფრული ინტერფეისით ისეთი პროგრამებისთვის, როგორიცაა დაბალი ღირებულების კომპასი და მაგნეტომეტრია. მისი ერთიდან ორ გრადუსამდე მაღალი დონის სიზუსტე და სიზუსტე საშუალებას აძლევს ფეხით მოსიარულეთა ნავიგაციას და LBS პროგრამებს.
გირჩევთ:
მაგნიტური ველის გაზომვა HMC5883 და ჟოლოს Pi გამოყენებით: 4 ნაბიჯი
![მაგნიტური ველის გაზომვა HMC5883 და ჟოლოს Pi გამოყენებით: 4 ნაბიჯი მაგნიტური ველის გაზომვა HMC5883 და ჟოლოს Pi გამოყენებით: 4 ნაბიჯი](https://i.howwhatproduce.com/images/004/image-10131-j.webp)
მაგნიტური ველის გაზომვა HMC5883 და Raspberry Pi გამოყენებით: HMC5883 არის ციფრული კომპასი, რომელიც შექმნილია დაბალი ველის მაგნიტური ზონდირებისათვის. ამ მოწყობილობას აქვს მაგნიტური ველის ფართო დიაპაზონი +/- 8 Oe და გამომავალი სიჩქარე 160 ჰც. HMC5883 სენსორი მოიცავს სამაგრების ავტომატური მოხსნას დრაივერებზე, ოფსეტური გაუქმებით და
მაგნიტური ველის გაზომვა HMC5883 და ნაწილაკების ფოტონის გამოყენებით: 4 ნაბიჯი
![მაგნიტური ველის გაზომვა HMC5883 და ნაწილაკების ფოტონის გამოყენებით: 4 ნაბიჯი მაგნიტური ველის გაზომვა HMC5883 და ნაწილაკების ფოტონის გამოყენებით: 4 ნაბიჯი](https://i.howwhatproduce.com/images/004/image-10149-j.webp)
მაგნიტური ველის გაზომვა HMC5883 და ნაწილაკების ფოტონის გამოყენებით: HMC5883 არის ციფრული კომპასი, რომელიც შექმნილია დაბალი ველის მაგნიტური ზონდირებისათვის. ამ მოწყობილობას აქვს მაგნიტური ველის ფართო დიაპაზონი +/- 8 Oe და გამომავალი სიჩქარე 160 ჰც. HMC5883 სენსორი მოიცავს სამაგრების ავტომატური მოხსნას დრაივერებზე, ოფსეტური გაუქმებით და
წნევის გაზომვა CPS120 და არდუინო ნანოს გამოყენებით: 4 ნაბიჯი
![წნევის გაზომვა CPS120 და არდუინო ნანოს გამოყენებით: 4 ნაბიჯი წნევის გაზომვა CPS120 და არდუინო ნანოს გამოყენებით: 4 ნაბიჯი](https://i.howwhatproduce.com/images/004/image-10151-j.webp)
წნევის გაზომვა CPS120- ისა და არდუინო ნანოს გამოყენებით: CPS120 არის მაღალი ხარისხის და დაბალი ღირებულების capacitive აბსოლუტური წნევის სენსორი სრულად ანაზღაურებული გამომუშავებით. ის მოიხმარს ძალიან ნაკლებ ენერგიას და მოიცავს ულტრა მცირე მიკროელექტრო – მექანიკურ სენსორს (MEMS) წნევის გაზომვისთვის. სიგმა-დელტაზე დაფუძნებული
ტემპერატურის გაზომვა STS21 და არდუინო ნანოს გამოყენებით: 4 ნაბიჯი
![ტემპერატურის გაზომვა STS21 და არდუინო ნანოს გამოყენებით: 4 ნაბიჯი ტემპერატურის გაზომვა STS21 და არდუინო ნანოს გამოყენებით: 4 ნაბიჯი](https://i.howwhatproduce.com/images/004/image-10165-j.webp)
ტემპერატურის გაზომვა STS21- ისა და არდუინო ნანოს გამოყენებით: STS21 ციფრული ტემპერატურის სენსორი გთავაზობთ საუკეთესო შესრულებას და სივრცის დაზოგვის ნაკვალევს. ის უზრუნველყოფს დაკალიბრებულ, ხაზოვანი სიგნალებს ციფრულ, I2C ფორმატში. ამ სენსორის დამზადება ემყარება CMOSens ტექნოლოგიას, რომელიც მიაკუთვნებს უპირატესობას
აჩქარების გაზომვა H3LIS331DL და არდუინო ნანოს გამოყენებით: 4 ნაბიჯი
![აჩქარების გაზომვა H3LIS331DL და არდუინო ნანოს გამოყენებით: 4 ნაბიჯი აჩქარების გაზომვა H3LIS331DL და არდუინო ნანოს გამოყენებით: 4 ნაბიჯი](https://i.howwhatproduce.com/images/008/image-22422-j.webp)
H3LIS331DL და Arduino Nano- ს გამოყენებით დაჩქარების გაზომვა: H3LIS331DL არის დაბალი სიმძლავრის მაღალი სიმძლავრის 3 ღერძიანი წრფივი ამაჩქარებელი, რომელიც მიეკუთვნება "ნანოს" ოჯახს, ციფრული I²C სერიული ინტერფეისით. H3LIS331DL– ს აქვს მომხმარებლის მიერ შერჩეული სრული სასწორი ± 100 გ/± 200 გ/g 400 გ და მას შეუძლია გაზომოს აჩქარებები