Përmbajtje:
- Hapi 1: Lidhja e TFmini me Teensy 3.5 (e ngjashme për Arduino Mega)
- Hapi 2: Kodi për ta ekzekutuar atë
- Hapi 3: Përdorimi i Arduino IDE View Results në Serial Plotter
Video: Benewake TFmini - LiDAR i lirë me Teensy 3.5: 3 Hapa
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:27
Njësia Benewake TFmini LiDAR është një sensor LiDAR i vogël, me peshë shumë të lehtë për rreth 50 dollarë kanadezë. Dokumentacioni ishte i mirë, por jo i plotë. Ai siguroi detaje mbi marrjen e të dhënave nga sensori, por harroi të përmend sinjalin e nevojshëm për ta vendosur sensorin në modalitetin e paracaktuar në mënyrë që të dërgojë të dhënat në të vërtetë. Për fat kjo ishte në dokumentin e korrigjimit.
Pra, kjo është ajo që funksionoi për mua, dhe është me të vërtetë një pajisje e lehtë për të punuar me të.
Zgjodha të përdor një Teensy 3.5 pasi ka porte të shumta seriale HW, është më shumë se i shpejtë sa për të marrë të dhëna dhe përpunuar ato pa lënë grumbullimin e të dhënave. Vetëm për argëtim kam përdorur bibliotekën Teensy Threading për të ndarë marrjen e të dhënave nga pjesa tjetër e kodit.
Hapi 1: Lidhja e TFmini me Teensy 3.5 (e ngjashme për Arduino Mega)
Ky shembull kërkon dy lidhje serike: një me TFmini dhe një për të shfaqur rezultatet në kompjuterin tuaj. Për këtë arsye, dhe me aq sa mund të them, vetëm për këtë arsye, ky shembull i veçantë nuk do të funksionojë në asgjë nën një Arduino Mega ose Teensy 3.x.
Duke u thënë kështu, për aplikacionet që nuk kërkojnë dalje serike për t'u printuar në ekranin e kompjuterit, i njëjti projekt duhet të jetë i adaptueshëm.
Përdorimi i parzmoreve të telit të përfshirë:
1) lidhni tela të zinj me Teensy GND (nëse përdorni burimin e ndryshimit VDC, sigurohuni që toka të shkojë edhe në GND në Teensy)
2) lidhni tela të kuq me Teensy Vin (ose burim 5VDC)
3) lidhni tela të bardhë (TFmini RX) në kunjin 1 në Teensy (Serial1 TX)
4) lidhni telin jeshil (TFmini TX) në pin 0 në Teensy (Serial RX)
Rripi i telit të përfshirë ishte shumë i vogël për mua për të punuar në një dërrasë bukë, kështu që unë e preva fundin përballë TFmini, dhe i bashkova telat në një dërrasë buke, shtova një lidhës JST në tavolinë dhe i bëra një JST kërcyesit meshkuj parzmore tela.
Hapi 2: Kodi për ta ekzekutuar atë
Përdorni kodin e mëposhtëm (për Teensy 3.5) ose shkarkoni skedarin e bashkangjitur:
Për Arduino Mega, filetimi ka të ngjarë të mos funksionojë. Zhvendosni kodin nga funksioni readLiDAR në lakin kryesor dhe hiqni gjithçka që lidhet me filetimin.
#include #include "TeensyThreads.h"
// Përdorimi i kabllit të furnizuar:
// - E zezë = GND (e lidhur me GND) // - E kuqe = 5V (4.5 - 6.0V) (e lidhur me Vin në Teensy 3.5, ose 5V në Arduino) // - E bardhë = TFmini RX (aka. Lidheni me mikrokontrolluesin TX, pin1 në Teensy 3.5) // - Green = TFmini TX (aka. lidheni me mikrokontrolluesin RX, pin0 në Teensy 3.5) // SHENIM: për këtë skicë keni nevojë për një mikrokontrollues me porte seriale shtesë përtej atij të lidhur me kabllon USB / / Kjo përfshin Arduino MEGA (përdorni Serial1), Teensy (3.x) (përdorni një nga lidhjet seriale të disponueshme HW)
e paqëndrueshme int liDARval = 0;
e pavlefshme readLiDAR () {
// Formati i të dhënave për Benewake TFmini // ============================ // 9 byte gjithsej për mesazh: // 1) 0x59 // 2) 0x59 // 3) Dist_L (i ulët 8bit) // 4) Dist_H (i lartë 8bit) // 5) Forca_L (e ulët 8bit) // 6) Forca_H (e lartë 8bit) // 7) Byte të rezervuara // 8) Shkalla e cilësisë së sinjalit origjinal // 9) Bit i barazisë së checksum (i ulët 8bit), Checksum = Byte1 +Byte2 +… +Byte8. Ky është vetëm një 8bit i ulët edhe pse ndërsa (1) {// Vazhdoni për një kohë të gjatë (Serial1.disponueshëm ()> = 9) // Kur të paktën 9 bajt të dhëna në dispozicion (numri i pritur i bajtëve për 1 sinjal), atëherë lexo {if ((0x59 == Serial1.read ()) && (0x59 == Serial1.read ())) // byte 1 dhe byte 2 {unsigned int t1 = Serial1.read (); // byte 3 = Dist_L unsigned int t2 = Serial1.read (); // bajt 4 = Dist_H t2 << = 8; t2 += t1; liDARval = t2; t1 = Serial1.lex (); // bajt 5 = Forca_L t2 = Serial1.lex (); // bajt 6 = Forca_H t2 << = 8; t2 += t1; për (int i = 0; i <3; i ++) Serial1.lex (); // byte 7, 8, 9 injorohen}}}}
void setup ()
{Serial1.fillo (115200); // Seriali HW për TFmini Serial.begin (115200); // Dalja serike përmes USB në vonesë në kompjuter (100); // Jepini pak kohë që gjërat të fillojnë // Vendoseni në modalitetin Standard të daljes Serial1.write (0x42); Serial1.shkruani (0x57); Serial1.shkruani (0x02); Serial1.shkruani (0x00); Serial1.shkruani (0x00); Serial1.shkruani (0x00); Serial1.shkruani (0x01); Serial1.shkruani (0x06); // Fije konfigurimi për leximin e hyrjes serike nga temat TFmini.addThread (readLiDAR); }
lak void ()
{vonesë (10); // Nuk dua të lexoj shumë shpesh si mostra TFmini në 100Hz Serial.println (liDARval); }
Hapi 3: Përdorimi i Arduino IDE View Results në Serial Plotter
Ju mund të përdorni çfarëdo metode që dëshironi, por IDE e Arduino do t'i vizatojë rezultatet mirë.
Lidhu me Teensy dhe hap Serial Monitor. Sigurohuni që Baudrate është vendosur në 115200.
Recommended:
Furnizues i Energjisë me Tension të Lirë të Lirë të Ndryshëm: 3 Hapa
Furnizues i Energjisë me Tension të Lartë të Lirë të Ndryshëm: Ndërtoni një furnizim me energji të rregulluar të tensionit të lartë për karikimin e kondensatorit ose një aplikim tjetër të tensionit të lartë. Ky projekt mund të kushtojë më pak se 15 dollarë dhe ju do të jeni në gjendje të merrni më shumë se 1000V dhe të jeni në gjendje të rregulloni daljen nga 0-1000V+. Ky udhëzim
Qark i formueshëm i lirë - Qarku i vërtetë i formës së lirë !: 8 hapa
Qark i formueshëm i lirë | Qark i vërtetë i formës së lirë !: Një qark LED me telekomandë me telekomandë të lirë të formueshme. Një ndjekës i lehtë i gjithanshëm i zbatueshëm DIY me modele të kontrolluara nga Arduino. Historia: Unë jam frymëzuar nga qarku i formës së lirë … Kështu që unë sapo bëra një qark të formës së lirë që është edhe i formësueshëm (mund të jetë
Tingull Reaktiv I Lirë Ir Led i Lirë: 4 Hapa
Sound Reactive Cheap Ir Led Strip: Sound Reactive Cheap Ir Led Stripwell, ideja erdhi pasi shiriti led mbërriti nga AliExpress dhe ato nuk ishin neopixel por rrip LED RGB me 44krys ose 24 lloje kryesore të telekomandës, Dumb me lol, porosita atë të gabuarin . I doja për një festë, por wi
Kornizë e lirë e lirë e fotografisë dixhitale: 6 hapa (me fotografi)
Kornizë e lirë e lirë e fotografisë dixhitale: Unë në thelb e bëra këtë si një dhuratë për ditëlindjen për të dashurën time. Po kërkoni një ide të mrekullueshme dhuratë? Kjo eshte! Kostoja totale ishte nën 100 dollarë, dhe mund të jetë shumë më pak nëse jeni tru. Unë e di që nuk jam i pari që kam dalë me idenë e një shtëpie
Ndërfaqe me shumë prekje në atë të lirë (me të vërtetë të lirë): 3 hapa
Ndërfaqe me shumë prekje në atë të lirë (me të vërtetë të lirë): Ky është udhëzuesi im i parë, kështu që ju lutemi tregohuni të mirë. Kjo është mënyra se si të bëni një ndërfaqe me shumë prekje nga tavolina juaj për shumë pak para. Më në fund mora një video, më vjen keq për normën e keqe të kornizës që laptopi im nuk është aq i mirë