استخدام البوصلة GY 26 في الروبوت
نبذة:
مرحبا مرة اخرى....! في هذي الورشة ساقوم باضافة البوصلة GY26 الى الروبوت. البوصلة ستساعدني في معرفة اتجاه الروبوت و ذلك لوجود بوصلة بالفعل في رقاقة الGY26.توصيل البوصلة GY 26
- التوصيل كما في الصورة.
البوصلة – اردوينو>>
- دبوس Vcc – مع 5V في الاردوينو
- دبوس GND – مع GND في الاردوينو
- دبوس TX – مع دبوس 18 في الاردوينو (الارسال)
- دبوس RX – مع دبوس 19 في الاردوينو (الاستقبال)
كتابة البرنامج
بعد كتابة البرنامج و تشغيله, ستجدون ان قراءة البوصلة تختلف كلما حركنا البوصلة. و هكذا استطيع معرفة اتجاه الروبوت من قراءة البوصلة.
تستطيعون تحميل الكود من الرابط:
char valuebyte[8];
int degreess = 0;
int counter = 0;
byte value = 0;
void setup() {
Serial.begin(9600);
Serial1.begin(9600);
}
void loop() {
reading();
}
void reading() {
value = 0;
Serial1.write(0x31);
while (value == 0) {
if (Serial1.available()) {
valuebyte[counter] = Serial1.read();
counter = (counter + 1) % 8;
if (counter == 0) {
degreess = (valuebyte[2] - 48) * 100 + (valuebyte[3] - 48) * 10 + (valuebyte[4] - 48);
value = 1;
}
}
}
Serial.println(degreess);
delay(300);
}
شكرا على الشرح الجميل
👏🏻👍🏻
عمل رائع ننتظر المزيد من الابداع
مجهود تشكرون عليه ابداع
ما شاء الله شرح و توثيق خطوات احترافي