Оглавление:
Видео: 聲納: 4 шага
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:50
改作:
我 在 原本 聲納 的 基礎 下 加裝 了 喇叭 以 達到 警告 的 作用
材料: arduino uno, 超音波 感測器, 驅動 馬達, 喇叭
: 掃描 到 10 см 時 喇叭 會 警告
Шаг 1: Шаг 1 電路圖
這 是 電路圖
Шаг 2: Шаг 2 寫 程式 (Arduino)
create.arduino.cc/editor/dwdawdad/ef6b26a2-3f40-410d-9fdd-3413816090fe/preview
Шаг 3: Шаг 3 寫 程式 (обработка)
import processing.serial. *;
import java.awt.event. KeyEvent; import java.io. IOException;
Последовательный myPort; PFont orcFont; int iAngle; int iDistance; void setup () {размер (1000, 500); гладкий; плавный(); myPort = новый последовательный порт (это, «COM7», 9600); myPort.clear (); myPort.bufferUntil ('\ n');
} void draw () {fill (98, 245, 31); noStroke (); заполнить (0, 4); rect (0, 0, ширина, 0,935 * высота); заполнить (98, 245, 31); DrawRadar (); DrawLine (); DrawObject (); DrawText (); } void serialEvent (Serial myPort) {попробуйте {String data = myPort.readStringUntil ('\ n'); если (данные == ноль) {возврат; } int commaIndex = data.indexOf (","); Угол строки = data.substring (0, commaIndex); Расстояние строки = data.substring (commaIndex + 1, data.length () - 1); iAngle = StringToInt (угол); iDistance = StringToInt (расстояние); } catch (RuntimeException e) {}} void DrawRadar () {pushMatrix (); перевести (ширина / 2, 0,926 * высота); noFill (); strokeWeight (2); инсульт (98, 245, 31); // рисует дуговые линии DrawRadarArcLine (0.9375); DrawRadarArcLine (0,7300); DrawRadarArcLine (0,5210); DrawRadarArcLine (0,3130); // рисует угловые линии final int halfWidth = width / 2; строка (-halfWidth, 0, halfWidth, 0); для (внутренний угол = 30; угол <= 150; угол + = 30) {DrawRadarAngledLine (угол); } line (-halfWidth * cos (радианы (30)), 0, halfWidth, 0); popMatrix (); } void DrawRadarArcLine (конечный коэффициент с плавающей запятой) {arc (0, 0, коэффициент * ширина, коэффициент * ширина, PI, TWO_PI); } void DrawRadarAngledLine (final int angle) {line (0, 0, (-width / 2) * cos (радианы (угол)), (-width / 2) * sin (радианы (угол))); } void DrawObject () {pushMatrix (); перевести (ширина / 2, 0,926 * высота); strokeWeight (9); ход (255, 10, 10); int pixsDistance = int (iDistance * 0,020835 * высота); if (iDistance 40? «Вне диапазона»: «В диапазоне»), 0,125 * ширина, 0,9723 * высота); текст ("Угол:" + iAngle + "°", 0,52 * ширина, 0,9723 * высота); текст («Расстояние:», 0,74 * ширина, 0,9723 * высота); if (iDistance <40) {текст ("" + iDistance + "см", 0,775 * ширина, 0,9723 * высота); } textSize (25); заполнить (98, 245, 60); translate (0,5006 * ширина + ширина / 2 * cos (радианы (30)), 0,9093 * высота - ширина / 2 * sin (радианы (30))); повернуть (-радианы (-60)); текст («30 °», 0, 0); resetMatrix (); translate (0,497 * ширина + ширина / 2 * cos (радианы (60)), 0,9112 * высота - ширина / 2 * sin (радианы (60))); повернуть (-радианы (-30)); текст ("60 °", 0, 0); resetMatrix (); translate (0,493 * ширина + ширина / 2 * cos (радианы (90)), 0,9167 * высота - ширина / 2 * sin (радианы (90))); повернуть (радианы (0)); текст ("90 °", 0, 0); resetMatrix (); translate (0,487 * ширина + ширина / 2 * cos (радианы (120)), 0,92871 * высота - ширина / 2 * sin (радианы (120))); повернуть (радианы (-30)); текст ("120 °", 0, 0); resetMatrix (); translate (0,4896 * ширина + ширина / 2 * cos (радианы (150)), 0,9426 * высота - ширина / 2 * sin (радианы (150))); повернуть (радианы (-60)); текст ("150 °", 0, 0); popMatrix (); }
int StringToInt (String строка) {значение int = 0; for (int i = 0; i = '0' && string.charAt (i) <= '9') {значение * = 10; значение + = (string.charAt (i) - '0'); }} возвращаемое значение;}
Рекомендуемые:
Распознавание лиц на Raspberry Pi 4B за 3 шага: 3 шага
Обнаружение лиц на Raspberry Pi 4B за 3 шага: в этом руководстве мы собираемся выполнить обнаружение лиц на Raspberry Pi 4 с помощью Shunya O / S, используя библиотеку Shunyaface. Shunyaface - это библиотека распознавания / обнаружения лиц. Проект направлен на достижение максимальной скорости обнаружения и распознавания с помощью
Как установить плагины в WordPress за 3 шага: 3 шага
Как установить плагины в WordPress за 3 шага: в этом уроке я покажу вам основные шаги по установке плагина wordpress на ваш сайт. В основном вы можете установить плагины двумя разными способами. Первый способ - через ftp или через cpanel. Но я не буду перечислять это, потому что он действительно комп
Прямая трансляция HD-видео 4G / 5G с дрона DJI с малой задержкой [3 шага]: 3 шага
Прямая трансляция HD-видео 4G / 5G с дрона DJI с малой задержкой [3 шага]: следующее руководство поможет вам получать прямые видеопотоки HD-качества практически с любого дрона DJI. С помощью мобильного приложения FlytOS и веб-приложения FlytNow вы можете начать потоковую передачу видео с дрона
Протез руки, напечатанный на 3D-принтере за 4 шага !: 4 шага
Протез руки, напечатанный на 3D-принтере за 4 шага !: Этот проект - протез руки, напечатанный мной, я хочу получить больше знаний о протезировании и 3D-печати. Хотя это не лучший проект, это отличный способ получить практический опыт и научиться создавать
Интерфейс сенсора ADXL335 на Raspberry Pi 4B в 4 шага: 4 шага
Интерфейс датчика ADXL335 на Raspberry Pi 4B за 4 шага: в этом руководстве мы собираемся связать датчик ADXL335 (акселерометр) на Raspberry Pi 4 с Shunya O / S