Tartalomjegyzék:
Videó: 聲納: 4 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:40
改作:
我 在 原本 聲納 的 基礎 下 加裝 了 喇叭 以 達到 警告 的 作用
Cím: arduino uno, 超音波 感測器, 驅動 馬達, 喇叭
功能: 掃描 到 物品 時 加速 並 傳 述 到 電腦 , 物品 接近 10 cm 時 喇叭 會 警告
1. lépés: 1. lépés 電路圖
這 是 電路圖
2. lépés: 2. lépés 寫 程式 (arduino)
create.arduino.cc/editor/dwdawdad/ef6b26a2-3f40-410d-9fdd-3413816090fe/preview
3. lépés: 3. lépés 寫 程式 (feldolgozás)
import feldolgozás.sorozat.*;
import java.awt.event. KeyEvent; import java.io. IOException;
Soros myPort; PFont orcFont; int iAngle; int iDistance; void setup () {méret (1000, 500); sima(); myPort = új soros (ez, "COM7", 9600); myPort.clear (); myPort.bufferUntil ('\ n');
} void draw () {fill (98, 245, 31); noStroke (); kitöltés (0, 4); rect (0, 0, szélesség, 0,935 * magasság); kitöltés (98, 245, 31); DrawRadar (); DrawLine (); DrawObject (); DrawText (); } void serialEvent (Soros myPort) {try {String data = myPort.readStringUntil ('\ n'); if (adatok == null) {return; } int vesszőIndex = adat.indexOf (","); Karakterlánc szög = data.substring (0, vesszőIndex); Karakterlánc távolsága = adat.substring (vesszőindex+1, adat.hossz ()-1); iAngle = StringToInt (szög); iDistance = StringToInt (távolság); } catch (RuntimeException e) {}} void DrawRadar () {pushMatrix (); fordítás (szélesség/2, 0,926 * magasság); noFill (); strokeSúly (2); stroke (98, 245, 31); // rajzolja az ívvonalakat DrawRadarArcLine (0.9375); DrawRadarArcLine (0,7300); DrawRadarArcLine (0,5210); DrawRadarArcLine (0,3130); // megrajzolja a szögvonalakat végső int halfWidth = width/2; vonal (-fél szélesség, 0, fél szélesség, 0); for (int szög = 30; szög <= 150; szög+= 30) {DrawRadarAngledLine (szög); } vonal (-fél szélesség * cos (radián (30)), 0, fél szélesség, 0); popMatrix (); } void DrawRadarArcLine (végső lebegési együttható) {arc (0, 0, együttható * szélesség, együttható * szélesség, PI, TWO_PI); } void DrawRadarAngledLine (végső int szög) {line (0, 0, (-szélesség/2) * cos (radián (szög)), (-szélesség/2) * sin (radián (szög))); } void DrawObject () {pushMatrix (); fordítás (szélesség/2, 0,926 * magasság); strokeSúly (9); ütés (255, 10, 10); int pixsDistance = int (iDistance * 0,020835 * magasság); if (iDistance 40? "Out of Range": "In Range"), 0,125 * szélesség, 0,9723 * magasság); szöveg ("Szög:" + iAngle + "°", 0,52 * szélesség, 0,9723 * magasság); szöveg ("Távolság:", 0,74 * szélesség, 0,9723 * magasság); if (iTávolság <40) {text ("" + iTávolság + "cm", 0,775 * szélesség, 0,9723 * magasság); } textSize (25); kitöltés (98, 245, 60); fordítás (0,5006 * szélesség + szélesség/2 * cos (radián (30)), 0,9093 * magasság - szélesség/2 * sin (radián (30))); forgatás (-radiánok (-60)); szöveg ("30 °", 0, 0); resetMatrix (); fordítás (0,497 * szélesség + szélesség/2 * cos (radián (60)), 0,9112 * magasság - szélesség/2 * sin (radián (60))); forgatás (-radiánok (-30)); szöveg ("60 °", 0, 0); resetMatrix (); fordítás (0,493 * szélesség + szélesség/2 * cos (radián (90)), 0,9167 * magasság - szélesség/2 * sin (radián (90))); forgatás (radián (0)); szöveg ("90 °", 0, 0); resetMatrix (); fordítás (0,487 * szélesség + szélesség/2 * cos (radián (120))), 0,92871 * magasság - szélesség/2 * sin (radián (120))); forgatás (radián (-30)); szöveg ("120 °", 0, 0); resetMatrix (); lefordítani (0,4896 * szélesség + szélesség/2 * cos (radián (150)), 0,9426 * magasság - szélesség/2 * sin (radián (150))); forgatás (radián (-60)); szöveg ("150 °", 0, 0); popMatrix (); }
int StringToInt (Karakterlánc) {int érték = 0; for (int i = 0; i = '0' && string.charAt (i) <= '9') {érték *= 10; érték += (string.charAt (i) - '0'); }} visszatérési érték;}
Ajánlott:
DC - DC feszültség Lépés lekapcsoló mód Buck feszültségátalakító (LM2576/LM2596): 4 lépés
DC-DC feszültség Lépés lekapcsoló üzemmód Buck feszültségátalakító (LM2576/LM2596): A rendkívül hatékony bakkonverter készítése nehéz feladat, és még a tapasztalt mérnököknek is többféle kivitelre van szükségük, hogy a megfelelőt hozzák létre. egy DC-DC áramátalakító, amely csökkenti a feszültséget (miközben növeli
Akusztikus levitáció az Arduino Uno-val Lépésről lépésre (8 lépés): 8 lépés
Akusztikus lebegés az Arduino Uno-val Lépésről lépésre (8 lépés): ultrahangos hangátvivők L298N Dc női adapter tápegység egy egyenáramú tűvel Arduino UNOBreadboard és analóg portok a kód konvertálásához (C ++)
Élő 4G/5G HD videó streamelés DJI drónról alacsony késleltetéssel [3 lépés]: 3 lépés
Élő 4G/5G HD videó streaming a DJI Drone-tól alacsony késleltetéssel [3 lépés]: Az alábbi útmutató segít abban, hogy szinte bármilyen DJI drónról élő HD minőségű videó streameket kapjon. A FlytOS mobilalkalmazás és a FlytNow webes alkalmazás segítségével elindíthatja a videó streamingjét a drónról
Bolt - DIY vezeték nélküli töltő éjszakai óra (6 lépés): 6 lépés (képekkel)
Bolt - DIY vezeték nélküli töltés éjszakai óra (6 lépés): Az induktív töltés (más néven vezeték nélküli töltés vagy vezeték nélküli töltés) a vezeték nélküli áramátvitel egyik típusa. Elektromágneses indukciót használ a hordozható eszközök áramellátásához. A leggyakoribb alkalmazás a Qi vezeték nélküli töltő
4 lépés az akkumulátor belső ellenállásának méréséhez: 4 lépés
4 lépés az akkumulátor belső ellenállásának mérésére: Íme a 4 egyszerű lépés, amelyek segítenek mérni az akkumulátor belső ellenállását