
2025 Autor: John Day | day@howwhatproduce.com. Naposledy zmenené: 2025-01-23 15:05

改作:
我 在 原本 聲納 的 基礎 下 加裝 了 喇叭 以 達到 警告 的 作用
Slová: arduino uno, 超音波 感測器, 驅動 馬達, 喇叭
功能: 掃描 到 物品 時 加速 並 傳 述 到 電腦 , 物品 接近 10 cm
Krok 1: Krok 1 電路圖

這 是 電路圖
Krok 2: Krok 2 寫 程式 (arduino)

create.arduino.cc/editor/dwdawdad/ef6b26a2-3f40-410d-9fdd-3413816090fe/preview
Krok 3: Krok 3 寫 程式 (spracovanie)
spracovanie importu.sériové.*;
import java.awt.event. KeyEvent; import java.io. IOException;
Sériový myPort; PFont orcFont; int iAngle; int iDistance; void setup () {veľkosť (1000, 500); hladký (); myPort = nový sériový port (tento, „COM7“, 9600); myPort.clear (); myPort.bufferUntil ('\ n');
} void draw () {fill (98, 245, 31); noStroke (); výplň (0, 4); priamy (0, 0, šírka, 0,935 * výška); výplň (98, 245, 31); DrawRadar (); DrawLine (); DrawObject (); DrawText (); } void serialEvent (Serial myPort) {try {String data = myPort.readStringUntil ('\ n'); if (data == null) {return; } int commaIndex = data.indexOf (","); Uhol reťazca = data.substring (0, commaIndex); Vzdialenosť reťazcov = data.substring (commaIndex+1, data.length ()-1); iAngle = StringToInt (uhol); iDistance = StringToInt (vzdialenosť); } catch (RuntimeException e) {}} neplatné DrawRadar () {pushMatrix (); preložiť (šírka/2, 0,926 * výška); noFill (); zdvihová hmotnosť (2); zdvih (98, 245, 31); // nakreslí oblúkové čiary DrawRadarArcLine (0,9375); DrawRadarArcLine (0,7300); DrawRadarArcLine (0,5210); DrawRadarArcLine (0,3130); // nakreslí uhlové čiary final int halfWidth = width/2; riadok (-polovičná šírka, 0, polovičná šírka, 0); pre (vnútorný uhol = 30; uhol <= 150; uhol+= 30) {DrawRadarAngledLine (uhol); } riadok (-polovičná šírka * cos (radiány (30)), 0, polovičná šírka, 0); popMatrix (); } neplatné DrawRadarArcLine (konečný float koeficient) {arc (0, 0, koeficient * šírka, koeficient * šírka, PI, TWO_PI); } neplatné DrawRadarAngledLine (konečný vnútorný uhol) {riadok (0, 0, (-šírka/2) * cos (radiány (uhol)), (-šířka/2) * sin (radiány (uhol))); } neplatné DrawObject () {pushMatrix (); preložiť (šírka/2, 0,926 * výška); zdvihová hmotnosť (9); zdvih (255, 10, 10); int pixsDistance = int (iDistance * 0,020835 * výška); if (iDistance 40? "Out of Range": "In Range"), 0,125 * šírka, 0,9723 * výška); text ("Uhol:" + iAngle + "°", 0,52 * šírka, 0,9723 * výška); text ("Vzdialenosť:", 0,74 * šírka, 0,9723 * výška); if (iDistance <40) {text ("" + iDistance + "cm", 0,775 * šírka, 0,9723 * výška); } textSize (25); výplň (98, 245, 60); translate (0,5006 * šírka + šírka/2 * cos (radiány (30)), 0,9093 * výška - šírka/2 * sin (radiány (30))); striedať (-radiány (-60)); text ("30 °", 0, 0); resetMatrix (); translate (0,497 * šírka + šírka/2 * cos (radiány (60)), 0,9112 * výška - šírka/2 * sin (radiány (60))); striedať (-radiány (-30)); text ("60 °", 0, 0); resetMatrix (); translate (0,493 * šírka + šírka/2 * cos (radiány (90)), 0,9167 * výška - šírka/2 * sin (radiány (90))); rotácia (radiány (0)); text ("90 °", 0, 0); resetMatrix (); translate (0,487 * šírka + šírka/2 * cos (radiány (120)), 0,92871 * výška - šírka/2 * sin (radiány (120))); rotácia (radiány (-30)); text ("120 °", 0, 0); resetMatrix (); translate (0,4896 * šírka + šírka/2 * cos (radiány (150)), 0,9426 * výška - šírka/2 * sin (radiány (150))); rotácia (radiány (-60)); text ("150 °", 0, 0); popMatrix (); }
int StringToInt (reťazec reťazca) {int hodnota = 0; pre (int i = 0; i = '0' && string.charAt (i) <= '9') {hodnota *= 10; hodnota += (string.charAt (i) - '0'); }} návratová hodnota;}
Odporúča:
DIY Ako zobraziť čas na M5StickC ESP32 pomocou Visuino - jednoduché kroky: 9 krokov

DIY Ako zobraziť čas na M5StickC ESP32 pomocou Visuino - Jednoduché kroky: V tomto návode sa naučíme, ako naprogramovať ESP32 M5Stack StickC s Arduino IDE a Visuino tak, aby sa čas zobrazoval na LCD displeji
Čas zobrazenia Arduina na LED displeji TM1637 pomocou RTC DS1307: 8 krokov

Čas zobrazenia Arduino na LED displeji TM1637 pomocou RTC DS1307: V tomto návode sa naučíme, ako zobrazovať čas pomocou modulu RTC DS1307 a LED displeja TM1637 a Visuino. Pozrite si video
Svetlo na čas: 3 kroky

Svetlo na čas: Moja žena vytiahla tento LED osvetlený nápis a zavesila ho do našej malej chodby. Zapínala ju veľmi dobre, ale veľmi zábudlivo ju opäť vypínala! Zjavným výsledkom je skutočnosť, že sme batérie príliš často vymieňali! Rozhodol som sa
Laserový čas RADAR VL53L0X Čas letu: 9 krokov

Laserový čas letu RADAR VL53L0X: V tomto návode sa naučíme, ako vytvoriť systém RADAR Lidar pomocou laserového senzora času letu VL53L0X. Pozrite si video
Čas a teplota s LCD a Arduino (OPRAVENÉ): 4 kroky

Čas a teplota s LCD a Arduino (OPRAVENÉ): Ahoj všetci! Volám sa Samuele, mám 14 rokov a pochádzam zo Sicílie … Som novým vstupom do sveta Arduina! Mám nejaké skúsenosti s elektronikou a projektom pre domácich majstrov. , ale začal som písať niekoľko programov na Arduino, aby som zjednodušil svoju prácu. Toto sú moje prvé Ins