Сонар Arduino
Компоненты и расходные материалы
| × | 1 | ||||
| × | 1 |
Об этом проекте
Визуализация экрана радара для HC-SR04
Код Arduino:
Отправляет показания датчика для каждого градуса, перемещаемого значениями сервопривода, отправляемыми в последовательный порт для получения обработкой
https://github.com/faweiz/My-Arduino/blob/master/arduino_radar/Arduino_radar_HC_SR04/Arduino/Arduino_radar_server_arduino/Arduino_radar_server_arduino.ino
Код обработки:
Обозначает область того, что HC-SR04 видит сверху вниз. Принимает и отображает 2 показания, одно слева направо и одно справа налево. Отображает среднее значение двух показаний
https://github.com/faweiz/My-Arduino/blob/master/arduino_radar/Arduino_radar_HC_SR04/Processing-code/Arduino_radar_client_processing/Arduino_radar_client_processing.pde
Любые вопросы приветствуются!
Github:https://github.com/faweiz
Портфолио:https://portfolium.com/faweiz
Linkedin:https://www.linkedin.com/in/faweiz
Код
- Файл без названия
Файл без названия Arduino
/*https://www.hackster.io/faweiz/arduino-radar Визуализация экрана радара для HC-SR04 Отправляет показания датчика для каждого градуса, перемещаемого серво значениями, отправленными в последовательный порт, для получения обработкой * / # include#include #define TRIGGER_PIN 2 // Контакт 2 Arduino привязан к контакту триггера на ультразвуковом датчике. #Define ECHO_PIN 3 // Контакт 3 Arduino привязан к контакту эхо-сигнала на ультразвуковом датчике. #Define MAX_DISTANCE 150 // Максимальное расстояние, которое мы хотим пинговать (в сантиметрах). Максимальное расстояние датчика оценивается в 400-500 см. #Define SERVO_PWM_PIN 9 // установить сервопривод на вывод 9 Arduino // означает -angle .. angle #define ANGLE_BOUNDS 80 # define ANGLE_STEP 1 int angle =0; // направление движения сервопривода // -1 =назад, 1 =вперед int dir =1; Сервомойка; Сонар NewPing (TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE); void setup () {Serial.begin (9600); // инициализируем последовательный порт:myservo.attach (SERVO_PWM_PIN); // установить сервопривод на вывод 9 Arduino} void loop () {delay (50); // мы должны перенормировать на положительные значения, потому что угол от -ANGLE_BOUNDS .. ANGLE_BOUNDS // и значение сервопривода должно быть положительным myservo.write (angle + ANGLE_BOUNDS); // считываем расстояние от датчика и отправляем на последовательный порт getDistanceAndSend2Serial (angle); // вычисляем угол if (angle> =ANGLE_BOUNDS || angle <=-ANGLE_BOUNDS) {dir =-dir; } угол + =(dir * ANGLE_STEP); } int getDistanceAndSend2Serial (интервал угла) {int cm =sonar.ping_cm (); Серийная печать (угол, DEC); Serial.print (","); Serial.println (см, дек); }
Код
https://github.com/faweiz/My-Arduino/tree/master/arduino_radarArduino_radar_server_arduino.ino
Arduino_radar_client_processing.pde
Схема
Производственный процесс