Სარჩევი:
ვიდეო: Raspberry Pi - ADXL345 3 -Axis Accelerometer Java Tutorial: 4 Steps
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:16
ADXL345 არის პატარა, თხელი, ულტრა დაბალი სიმძლავრის, 3 ღერძიანი ამაჩქარებელი მაღალი გარჩევადობის (13 ბიტიანი) გაზომვით ± 16 გ-მდე. ციფრული გამომავალი მონაცემები ფორმატირებულია, როგორც 16 ბიტიანი ორეული და არის ხელმისაწვდომი I2 C ციფრული ინტერფეისის საშუალებით. იგი ზომავს სიმძიმის სტატიკურ აჩქარებას დახრის მგრძნობიარე პროგრამებში, ასევე მოძრაობის ან დარტყმის შედეგად წარმოქმნილ დინამიურ აჩქარებას. მისი მაღალი გარჩევადობა (3.9 მგ/LSB) საშუალებას გაძლევთ გაზომოთ დახრილობის ცვლილებები 1.0 ° -ზე ნაკლები. აქ არის დემონსტრირება ჟოლოს პი გამოყენებით ჯავას კოდი.
ნაბიჯი 1: რაც გჭირდებათ..
1. ჟოლო პი
2. ADXL345
3. I²C კაბელი
4. I²C ფარი ჟოლოს პიისთვის
5. Ethernet კაბელი
ნაბიჯი 2: კავშირები:
აიღეთ I2C ფარი ჟოლოსთვის და ნაზად წაუსვით ჟოლოს პი გპიოს ქინძისთავებზე.
შემდეგ დააკავშირეთ I2C კაბელის ერთი ბოლო ADXL345 სენსორთან და მეორე ბოლო I2C ფარს.
ასევე დაუკავშირეთ Ethernet კაბელი pi- ს ან შეგიძლიათ გამოიყენოთ WiFi მოდული.
კავშირები ნაჩვენებია ზემოთ მოცემულ სურათზე.
ნაბიჯი 3: კოდი:
Java კოდი ADXL345– ისთვის შეგიძლიათ გადმოწეროთ ჩვენი GitHub საცავიდან- Dcube Store
აქ არის იგივე ბმული:
github.com/DcubeTechVentures/ADXL345
ჩვენ გამოვიყენეთ pi4j ბიბლიოთეკა java კოდისთვის, ჟოლოს პიზე pi4j– ის დაყენების ნაბიჯები აღწერილია აქ:
pi4j.com/install.html
თქვენ ასევე შეგიძლიათ დააკოპიროთ კოდი აქედან, იგი მოცემულია შემდეგნაირად:
// განაწილებულია თავისუფალი ნების ლიცენზიით.
// გამოიყენეთ იგი ნებისმიერი ფორმით, როგორც გსურთ, მოგებით ან უფასოდ, იმ პირობით, რომ იგი ჯდება ლიცენზიებთან დაკავშირებული სამუშაოებისათვის.
// ADXL345
// ეს კოდი შექმნილია DCube მაღაზიაში ხელმისაწვდომი ADXL345_I2CS I2C მინი მოდულთან მუშაობისთვის.
იმპორტი com.pi4j.io.i2c. I2CBus;
იმპორტი com.pi4j.io.i2c. I2CD მოწყობილობა;
იმპორტი com.pi4j.io.i2c. I2C ქარხანა;
იმპორტი java.io. IOException;
საჯარო კლასი ADXL345
{
public static void main (სიმებიანი args ) ისვრის გამონაკლისს
{
// I2C ავტობუსის შექმნა
I2CBus Bus = I2CFactory.getInstance (I2CBus. BUS_1);
// მიიღეთ I2C მოწყობილობა, მოწყობილობის I2C მისამართი არის 0x53 (83)
I2CD მოწყობილობის მოწყობილობა = Bus.getDevice (0x53);
// აირჩიეთ გამტარუნარიანობის მაჩვენებელი რეგისტრი
// ნორმალური რეჟიმი, მონაცემების გამოყვანის სიჩქარე = 100 ჰც
მოწყობილობა. დაწერეთ (0x2C, (ბაიტი) 0x0A);
// აირჩიეთ Power control register
// ავტომატური ძილის გამორთვა
მოწყობილობა. დაწერეთ (0x2D, (ბაიტი) 0x08);
// აირჩიეთ მონაცემთა ფორმატის რეგისტრატორი
// თვითტესტილი გამორთულია, 4 მავთულის ინტერფეისი, სრული გარჩევადობა, დიაპაზონი = +/- 2 გ
device.write (0x31, (byte) 0x08);
თემა. ძილი (500);
// წაიკითხეთ მონაცემების 6 ბაიტი
// xAccl lsb, xAccl msb, yAccl lsb, yAccl msb, zAccl lsb, zAccl msb
ბაიტი მონაცემები = ახალი ბაიტი [6];
მონაცემები [0] = (ბაიტი) მოწყობილობა. წაკითხვა (0x32);
მონაცემები [1] = (ბაიტი) მოწყობილობა. წაკითხვა (0x33);
მონაცემები [2] = (ბაიტი) მოწყობილობა. წაკითხვა (0x34);
მონაცემები [3] = (ბაიტი) მოწყობილობა. წაკითხვა (0x35);
მონაცემები [4] = (ბაიტი) მოწყობილობა. წაკითხვა (0x36);
მონაცემები [5] = (ბაიტი) მოწყობილობა. წაკითხვა (0x37);
// გადააკეთეთ მონაცემები 10 ბიტად
int xAccl = ((მონაცემები [1] & 0x03) * 256 + (მონაცემები [0] & 0xFF));
თუ (xAccl> 511)
{
xAccl -= 1024;
}
int yAccl = ((მონაცემები [3] & 0x03) * 256 + (მონაცემები [2] & 0xFF));
თუ (yAccl> 511)
{
yAccl -= 1024;
}
int zAccl = ((მონაცემები [5] & 0x03) * 256 + (მონაცემები [4] & 0xFF));
if (zAccl> 511)
{
zAccl -= 1024;
}
// მონაცემების გამოტანა ეკრანზე
System.out.printf ("აჩქარება X- ღერძში: %d %n", xAccl);
System.out.printf ("აჩქარება Y- ღერძში: %d %n", yAccl);
System.out.printf ("აჩქარება Z- ღერძში: %d %n", zAccl);
}
}
ნაბიჯი 4: პროგრამები:
ADXL345 არის პატარა, თხელი, ულტრა დაბალი სიმძლავრის, 3 ღერძიანი ამაჩქარებელი, რომელიც შეიძლება გამოყენებულ იქნას ტელეფონებში, სამედიცინო აპარატურაში და ა.შ.
გირჩევთ:
Raspberry Pi - MPL3115A2 Precision Altimeter Sensor Python Tutorial: 4 Steps
ჟოლო Pi - MPL3115A2 ზუსტი სიმაღლის სენსორის პითონის სამეურვეო პროგრამა: MPL3115A2 იყენებს MEMS წნევის სენსორს I2C ინტერფეისით, რათა უზრუნველყოს წნევის/სიმაღლისა და ტემპერატურის ზუსტი მონაცემები. სენსორის გამოსასვლელი ციფრულდება მაღალი რეზოლუციის 24-ბიტიანი ADC საშუალებით. შიდა დამუშავება ამოიღებს კომპენსაციის ამოცანებს
Raspberry Pi - BH1715 Digital Ambient Light Sensor Python Tutorial: 4 Steps
Raspberry Pi - BH1715 ციფრული გარემოს სინათლის სენსორი Python სამეურვეო პროგრამა: BH1715 არის ციფრული გარე განათების სენსორი I²C ავტობუსის ინტერფეისით. BH1715 ჩვეულებრივ გამოიყენება გარე განათების მონაცემების მოსაპოვებლად, მობილური მოწყობილობებისთვის LCD და კლავიატურის შუქნიშნის სიმძლავრის შესაცვლელად. ეს მოწყობილობა გთავაზობთ 16 ბიტიან გარჩევადობას და დამატებით
Arduino Accelerometer Tutorial: გააკონტროლეთ გემის ხიდი სერვო ძრავის გამოყენებით: 5 ნაბიჯი
Arduino Accelerometer Tutorial: აკონტროლეთ გემის ხაზი სერვო ძრავის გამოყენებით: აქსელერომეტრის სენსორები არის ჩვენს სმარტფონების უმეტესობაში, რათა მათ გამოვიყენოთ მრავალფეროვანი გამოყენება და შესაძლებლობები, რომელსაც ჩვენ ყოველდღიურად ვიყენებთ, არც კი ვიცით, რომ ამაში პასუხისმგებელი არის ამაჩქარებელი. ერთ -ერთი ასეთი შესაძლებლობა არის კონტროლირებადი
Raspberry Pi A1332 Precision Hall - Effect Angle Sensor Java Tutorial: 4 Steps
Raspberry Pi A1332 Precision Hall - Effect Angle Sensor Java Tutorial: A1332 არის 360 ° უკონტაქტო მაღალი რეზოლუციის პროგრამირებადი მაგნიტური კუთხის პოზიციის სენსორი. ის განკუთვნილია ციფრული სისტემებისთვის I2C ინტერფეისის გამოყენებით. იგი აგებულია წრიული ვერტიკალური დარბაზის (CVH) ტექნოლოგიაზე და პროგრამირებადი მიკროპროცესორული სიგნალის საფუძველზე
Raspberry Pi - MPL3115A2 Precision Altimeter Sensor Java Tutorial: 4 Steps
Raspberry Pi - MPL3115A2 ზუსტი სიმაღლემეტრის სენსორი Java სამეურვეო პროგრამა: MPL3115A2 იყენებს MEMS წნევის სენსორს I2C ინტერფეისით, რათა უზრუნველყოს წნევის/სიმაღლისა და ტემპერატურის ზუსტი მონაცემები. სენსორის გამოსასვლელი ციფრულდება მაღალი რეზოლუციის 24-ბიტიანი ADC საშუალებით. შიდა დამუშავება ამოიღებს კომპენსაციის ამოცანებს