Съдържание:
- Стъпка 1: Обща информация за модула Compass
- Стъпка 2: Необходими компоненти
- Стъпка 3: Свързване на GY-511 компасов модул с Arduino
- Стъпка 4: Калибриране на модул компас GY-511
- Стъпка 5: Схема
- Стъпка 6: Код
- Стъпка 7: Създаване на цифров компас
- Стъпка 8: Схема
- Стъпка 9: Код
- Стъпка 10: Какво следва?
Видео: Как да използвате модул GY511 с Arduino [Направете цифров компас]: 11 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:52
Общ преглед
В някои проекти за електроника трябва всеки момент да знаем географското местоположение и съответно да извършим конкретна операция. В този урок ще научите как да използвате модула за компас LSM303DLHC GY-511 с Arduino, за да направите цифров компас. Първо ще научите за този модул и как работи, а след това ще видите как да взаимодействате модула LSM303DLHC GY-511 с Arduino.
Какво ще научите
- Какво представлява компасният модул?
- Модул компас и интерфейс Arduino.
- Направете цифров компас с модула GY-511 и Arduino.
Стъпка 1: Обща информация за модула Compass
Модулът GY-511 включва 3-осен акселерометър и 3-осен магнитометър. Този сензор може да измерва линейното ускорение при пълни скали от ± 2 g / ± 4 g / ± 8 g / ± 16 g и магнитни полета при пълни скали от ± 1,3 / ± 1,9 / ± 2,5 / ± 4,0 / ± 4,7 / ± 5,6 / ± 8,1 Гаус.
Когато този модул е поставен в магнитно поле, според закона на Лоренц в неговата микроскопична бобина се индуцира възбуждащ ток. Модулът на компаса преобразува този ток в диференциалното напрежение за всяка координатна посока. Използвайки тези напрежения, можете да изчислите магнитното поле във всяка посока и да получите географското положение.
Бакшиш
QMC5883L е друг често използван компасов модул. Този модул, който има подобна структура и приложение като модула LMS303, е малко по -различен по производителност. Така че, ако правите проектите, бъдете внимателни относно типа на вашия модул. Ако вашият модул е QMC5882L, използвайте съответната библиотека и кодове, които също са включени в урока.
Стъпка 2: Необходими компоненти
Хардуерни компоненти
Arduino UNO R3 *1
GY-511 3-осен акселерометър + магнитометър *1
Сервомотор TowerPro SG-90 *1
1602 LCD модул *1
Джъмпери *1
Софтуерни приложения
Arduino IDE
Стъпка 3: Свързване на GY-511 компасов модул с Arduino
Компасният модул GY-511 има 8 пина, но имате нужда само от 4 от тях, за да взаимодействате с Arduino. Този модул комуникира с Arduino, използвайки I2C протокол, така че свържете SDA (I2C изход) и SCK (I2C часовник вход) изводи на модула към I2C щифтовете на платката Arduino.
Забележка Както можете да видите, ние използвахме модула GY-511 в този проект. Но можете да използвате тази инструкция за настройка на други модули на компас LMS303.
Стъпка 4: Калибриране на модул компас GY-511
За да навигирате, първо трябва да калибрирате модула, което означава да зададете обхвата на измерване от 0 до 360 градуса. За да направите това, свържете модула към Arduino, както е показано по -долу, и качете следния код на дъската си. След като изпълните кода, можете да видите минималните и максималните стойности на обхвата на измерване за оста X, Y и Z в прозореца на серийния монитор. Тези числа ще ви трябват в следващата част, затова ги запишете.
Стъпка 5: Схема
Стъпка 6: Код
В този код се нуждаете от библиотеката Wire.h за I2C комуникация и библиотека LMS303.h за модула компас. Можете да изтеглите тези библиотеки от следните връзки.
Библиотека LMS303.h
Библиотека Wire.h
Забележка Ако използвате QMC5883, ще ви е необходима следната библиотека:
MechaQMC5883L.h
Тук обясняваме кода за LMS303, но можете да изтеглите и кодовете за QMC модула.
Нека да видим някои от новите функции:
compass.enableDefault ();
Инициализация на модула
compass.read ();
Четене на изходните стойности на модула компас
running_min.z = min (running_min.z, compass.m.z); running_max.x = max (running_max.x, compass.m.x);
Определяне на минималните и максималните стойности на обхвата на измерване чрез сравняване на измерените стойности.
Стъпка 7: Създаване на цифров компас
След калибриране на модула ще изградим компас, като свържем серво мотор към модула. Така че индикаторът за серво, винаги ни показва посоката на север, като червената стрелка на компаса. За да направите това, първо компасният модул първо изчислява географската посока и го изпраща към Arduino и след това, като приложите подходящ коефициент, ще изчислите ъгъла, който серво моторът трябва да завърти, така че неговият индикатор да сочи към северния магнит. В крайна сметка прилагаме този ъгъл към серво мотора.
Стъпка 8: Схема
Стъпка 9: Код
За тази част също се нуждаете от библиотеката Servo.h, която е инсталирана на вашия софтуер Arduino по подразбиране.
Нека да разгледаме някои от новите функции:
Серво Серво1;
Инициализация на модула
compass.read ();
Представяме обекта на серво мотора
Servo1.attach (servoPin); compass.init (); compass.enableDefault ();
Инициализиране на компас модула и серво мотора
Аргументът Servo1.attach () е номерът на щифта, свързан към серво мотора.
компас.m_min = (LSM303:: вектор) { -32767, -32767, -32767}; компас.m_max = (LSM303:: вектор) { +32767, +32767, +32767};
Използвайки тези редове, вие определяте минималните и максималните стойности за измерване на обхвата, получен в предишната част.
float heading = compass.heading ((LSM303:: vector) {0, 0, 1});
Функцията heading () връща ъгъла между координатната ос и неподвижната ос. Можете да определите фиксираната ос с вектор в аргумента на функцията. Например тук, чрез дефиниране на (LSM303:: вектор) {0, 0, 1}, оста Z се счита за постоянна ос.
Servo1.write (заглавие);
Функцията Servo1.write () прилага стойността на четене от модула на компаса към серво мотора.
Забележка: Имайте предвид, че серво моторът може да има магнитно поле, затова е по -добре да поставите серво мотора на подходящо разстояние от модула на компаса, така че да не отклонява модула на компаса.
Препоръчано:
Как да съборите цифров апарат и как работи цифров апарат: 4 стъпки
Как да съборите цифров апарат и как работи цифров апарат: Много хора знаят как да използват шублери за измерване. Този урок ще ви научи как да съборите цифров шублер и обяснение как работи цифровият апарат
Цифров компас с помощта на магнитометър Arduino и HMC5883L: 6 стъпки
Цифров компас, използващ магнитометър Arduino и HMC5883L: Здравейте, момчета, Този сензор може да посочи географския север, юг, изток и запад, ние хората също бихме могли да го използваме, когато е необходимо. Така. В тази статия нека се опитаме да разберем как работи сензорът за магнитометър и как да го свържем с микроконтролер
RF модул 433MHZ - Направете приемник и предавател от 433MHZ RF модул без микроконтролер: 5 стъпки
RF модул 433MHZ | Направете приемник и предавател от 433MHZ RF модул без никакъв микроконтролер: Искате ли да изпращате безжични данни? лесно и без нужда от микроконтролер? Ето, в тази инструкция ще ви покажа ми основен радиочестотен предавател и приемник, готов за употреба! В тази инструкция ще можете да изпращате и получавате данни, използвайки много вер
Как да използвате Mac терминал и как да използвате ключови функции: 4 стъпки
Как да използвате Mac терминал и как да използвате ключови функции: Ще ви покажем как да отворите MAC терминала. Също така ще ви покажем няколко функции в терминала, като ifconfig, промяна на директории, достъп до файлове и arp. Ifconfig ще ви позволи да проверите вашия IP адрес и вашата MAC реклама
Как да използвате TCRT5000 IR сензорен модул с Arduino UNO: 7 стъпки (със снимки)
Как да използвате TCRT5000 IR сензорен модул с Arduino UNO: В този урок ще ви научим на някои основи за използването на TCRT5000 IR сензорен модул. Тези основни ви показват аналоговите и цифровите стойности на серийния монитор. Описание: Този IR отразяващ сензор използва TCRT5000 за откриване на цвят и разсейване