INHOUDSOPGAWE:
Video: 聲納: 4 stappe
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:24
改作:
我 在 原本 聲納 的 基礎 下 了 了 喇叭 以 達到 警告 的 作用
材料: arduino uno, 超音波 感測器, 驅動 馬達, 喇叭
功能: 10 cm 時 喇叭 時 加速 述 述 到 接近 接近 接近 接近
Stap 1: Stap 1 電路圖
是 電路圖
Stap 2: Stap 2 寫 程式 (arduino)
create.arduino.cc/editor/dwdawdad/ef6b26a2-3f40-410d-9fdd-3413816090fe/preview
Stap 3: Stap 3 寫 程式 (verwerking)
invoerverwerking.reeks.*;
invoer java.awt.event. KeyEvent; invoer java.io. IOException;
Seriële myPort; PFont orcFont; int iAngle; int iDistance; ongeldige opstelling () {grootte (1000, 500); glad (); myPort = new Serial (hierdie, "COM7", 9600); myPort.clear (); myPort.bufferUntil ('\ n');
} ongeldig trek () {vul (98, 245, 31); noStroke (); vul (0, 4); reg (0, 0, breedte, 0,935 * hoogte); fill (98, 245, 31); DrawRadar (); DrawLine (); DrawObject (); DrawText (); } ongeldig serialEvent (Serial myPort) {probeer {String data = myPort.readStringUntil ('\ n'); as (data == null) {opgawe; } int commaIndex = data.indexOf (","); Stringhoek = data.substring (0, kommaIndex); Stringafstand = data.substring (kommaIndex+1, data.lengte ()-1); iAngle = StringToInt (hoek); iDistance = StringToInt (afstand); } catch (RuntimeException e) {}} void DrawRadar () {pushMatrix (); vertaal (breedte/2, 0,926 * hoogte); noFill (); beroertegewig (2); beroerte (98, 245, 31); // teken die booglyne DrawRadarArcLine (0.9375); DrawRadarArcLine (0,7300); DrawRadarArcLine (0.5210); DrawRadarArcLine (0.3130); // teken die hoeklyne finale int halfBreedte = breedte/2; line (-halfWidth, 0, halfWidth, 0); vir (int hoek = 30; hoek <= 150; hoek+= 30) {DrawRadarAngledLine (hoek); } lyn (-halfWidth * cos (radiale (30)), 0, halfWidth, 0); popMatrix (); } void DrawRadarArcLine (finale vlotkoëffisiënt) {boog (0, 0, koëffisiënt * breedte, koëffisiënt * breedte, PI, TWO_PI); } void DrawRadarAngledLine (finale int hoek) {line (0, 0, (-width/2) * cos (radialen (hoek)), (-width/2) * sin (radialen (hoek))); } ongeldig DrawObject () {pushMatrix (); vertaal (breedte/2, 0,926 * hoogte); beroertegewig (9); beroerte (255, 10, 10); int pixsDistance = int (iDistance * 0.020835 * hoogte); if (iDistance 40? "Out of Range": "In Range"), 0,125 * breedte, 0,9723 * hoogte); teks ("Hoek:" + iAngle + "°", 0,52 * breedte, 0,9723 * hoogte); teks ("Afstand:", 0,74 * breedte, 0,9723 * hoogte); as (iDistance <40) {text ("" + iDistance + "cm", 0,775 * breedte, 0,9723 * hoogte); } textSize (25); fill (98, 245, 60); translate (0.5006 * breedte + breedte/2 * cos (radiale (30)), 0.9093 * hoogte - breedte/2 * sin (radiale (30)))); draai (-radiane (-60)); teks ("30 °", 0, 0); resetMatrix (); translate (0.497 * breedte + breedte/2 * cos (radiale (60)), 0.9112 * hoogte - breedte/2 * sin (radiale (60)))); draai (-radians (-30)); teks ("60 °", 0, 0); resetMatrix (); translate (0.493 * breedte + breedte/2 * cos (radiale (90)), 0.9167 * hoogte - breedte/2 * sin (radiale (90)))); draai (radiale (0)); teks ("90 °", 0, 0); resetMatrix (); translate (0.487 * breedte + breedte/2 * cos (radiale (120)), 0.92871 * hoogte - breedte/2 * sin (radiale (120)))); draai (radiale (-30)); teks ("120 °", 0, 0); resetMatrix (); translate (0.4896 * breedte + breedte/2 * cos (radiale (150)), 0.9426 * hoogte - breedte/2 * sin (radiale (150)))); draai (radiale (-60)); teks ("150 °", 0, 0); popMatrix (); }
int StringToInt (string string) {int waarde = 0; for (int i = 0; i = '0' && string.charAt (i) <= '9') {waarde *= 10; waarde += (string.charAt (i) - '0'); }} opbrengswaarde;}
Aanbeveel:
Spelontwerp in vyf stappe: 5 stappe
Spelontwerp in fliek in 5 stappe: Flick is 'n baie eenvoudige manier om 'n speletjie te maak, veral iets soos 'n legkaart, visuele roman of avontuurlike spel
Gesigsopsporing op Raspberry Pi 4B in 3 stappe: 3 stappe
Gesigsopsporing op Raspberry Pi 4B in 3 stappe: in hierdie instruksies gaan ons gesigsopsporing uitvoer op Raspberry Pi 4 met Shunya O/S met behulp van die Shunyaface-biblioteek. Shunyaface is 'n biblioteek vir gesigherkenning/opsporing. Die projek het ten doel om die vinnigste opsporing en herkenningssnelheid te bereik met
DIY Vanity Mirror in eenvoudige stappe (met LED -strookligte): 4 stappe
DIY Vanity Mirror in eenvoudige stappe (met behulp van LED Strip Lights): In hierdie pos het ek 'n DIY Vanity Mirror gemaak met behulp van die LED strips. Dit is regtig cool, en u moet dit ook probeer
Arduino Halloween Edition - Zombies pop -out skerm (stappe met foto's): 6 stappe
Arduino Halloween Edition - Zombies pop -out skerm (stappe met foto's): wil u u vriende skrik en 'n skreeu geraas maak tydens Halloween? Of wil u net 'n goeie grap maak? Hierdie pop-up skerm van Zombies kan dit doen! In hierdie instruksies sal ek u leer hoe u maklik Zombies kan spring deur Arduino te gebruik. Die HC-SR0
Speel Doom op u iPod in 5 maklike stappe !: 5 stappe
Speel Doom op u iPod in 5 maklike stappe !: 'n Stap-vir-stap gids oor hoe u Rockbox op u iPod kan dubbellaai om Doom en tientalle ander speletjies te speel. Dit is iets baie maklik om te doen, maar baie mense staan nog steeds verbaas as hulle sien hoe ek op my iPod doom speel en deurmekaar raak met die instruksies