Sari la conținut
ELFORUM - Forumul electronistilor

Xiaomi - Lidar


informer

Postări Recomandate

Va salut.

Am dezmembrat un robot aspirator Xiaomi Roborock S5 v2 si am ramas cu niste componente interesante pe care as vrea sa le folosesc.
In special m-ar interesa lidar-ul si mecanismul rotilor.

In ce priveste rotile, cred ca o sa ma lamuresc asupra conexiunilor odata ce am sa desfac ansamblul... din ce am putut sa vad fara sa desfac (si din ceea ce banuiesc...) ar trebui sa gasesc acolo un encoder, un motor cu perii + reductor si am mai vazut un limitator care actioneaza cand rotile sunt "pliate" sub greutatea robotului.

Despre lidar am cautat pe net insa pana acum n-am gasit ceva foarte clar nici despre conexiuni nici despre cum anume livreaza datele (serial, unghi/distanta...???).
Ceva informatie privind conexiunile la o versiune anterioara ar fi aici: https://wiki.recessim.com/w/index.php?title=Xiaomi_Roborock_LIDAR&mobileaction=toggle_view_desktop

Poate cineva a vazut pe undeva ceva info :) ... gasim o varianta sa dau "berea"... ;)

cfmmKIR.jpeg

 

NxlYTfH.jpeg

 

8YYIJev.jpeg

Link spre comentariu
  • Răspunsuri 11
  • Creat
  • Ultimul Răspuns

Top autori în acest subiect

  • informer

    8

  • daniels

    2

  • cipcirip

    1

  • AdR!@N

    1

Top autori în acest subiect

Imagini postate

Am mai gasit ceva informatie aici, se pare ca foloseste exact acest tip de lidar:
http://axelsdiy.brinkeby.se/?p=1875
Pe de alta parte face referire la un proiect unde sunt specificate alte tipuri:
https://github.com/getSurreal/XV_Lidar_Controller

 

Se poate ca de fapt nu-s atatea feluri diferite de interfete :) ... o sa-l desfac astazi sa vad ceva componente, poate trag vreo concluzie ajutatoare....

Link spre comentariu

Bun, am desfacut placa "de putere"... nu c-as fi aflat mare lucru din asta... :rade:.

N-are rost sa desfac si partea mobila, ca-mi inchipui ce contine.

Transmisia de date se face optic, transmisia de putere se face inductiv.

Avand in vedere ca pe placa se pare ca exista doar un element fotosensibil deduc ca transmisia de date este unisens... asta-i bine, inseamna ca nu exista o initializare externa a partii de procesare care ar fi mai greu de "reverse-engineering-uit".
Intr-unul dintre video-urile de mai sus cineva zicea ca IC-u` de pe placa face parte dintr-o sursa de alimentare in comutatie a motorului... eu nu cred asta, cel putin nu la placa de fata, de vreme ce motorul are conectare directa la bornele cuplei... IC-ul se pare ca este un comparator dublu si-i folosit probabil la formatarea impulsurilor receptionate optic de la placa digitala.

Ce mi-ar fi placut ar fi fost sa deduc care-i tensiunea de alimentare a placii... din pacate nu exista informatii, o sa incep de la 3V3 ca sa fiu cat de cat safe.
Daca stie cineva chineza sa-mi zica ce sunt marcajele  din ultima poza, as fi recunoscator... :).

 

LpmU1lh.jpeg

 

6FmSKQq.jpeg

 

fNxZeLL.jpeg

 

 

 

 

 

 

Link spre comentariu

Gata, i-am pregatit un suport pt. teste si am adaptat codul de AICI pt. Arduino Mega (asta-l aveam cu mai mult de-o seriala).
De compilat se compileaza, mai tre` sa pun MOS-u` pt. control PWM al turatiei si sa vedem daca merge conform descrierii... mi-ar pica bine sa nu m-apuc de "decodat stream-uri"... :)

 

fIdsWtB.jpeg

Link spre comentariu

Codul functioneaza, regulatorul de turatie pid merge OK.
Conectarea este f. simpla, o iesire PWM (pin 5) in poarta unui MOS intercalat intre GND si borna negativa a motorului, o dioda de protectie paralel pe motor si iesirea TX a lidar-ului la intrarea RX a portului serial 1 al ArduinoMega (pin 19). Ambele seriale (intrarea lidar si consola) functioneaza la 115200. 

Atasez codul in caz ca vrea cineva sa incerce (codul NU imi apartine, doar am adaptat pt. Arduino Mega... link-ul github este postat mai sus).

Nu uitati sa incarcati librariile inainte de compilare.

Poate afisa mai multe treburi dar cred ca afisarea distantei pt. fiecare unghi de rotatie este cea mai importanta.

 

https://imgur.com/a7WTC9q

  

afisare.png

Lidar_Controller_getSurreal.zip

Link spre comentariu

Am testat si "turbina" recuperata de la aspirator.

Intentionam sa fac un extractor de fum dar e cam galagioasa... mai degraba undeva unde-i nevoie de racire fortata cu flux consistent de aer.

Motorul este unul BLDC cu tot cu driver montat pe carcasa turbinei.

Am incercat comanda cu semnal standard pt. servo (50Hz, 1-2ms durata puls activ), alimentare la 12V... nu merge, turatia e mica si reglabila f. putin.
Am incercat apoi 300Hz cu factor de umplere 20-80%... merge bine sau cel putin asa "aud" eu... :).

Am incercat sa gasesc documentatia la Nidec (producatorul trecut pe PCB-ul driverului) da` n-am gasit... ia un curent maxim in jur de 1.5A (masurat fara pretentii, cu ampermetrul sursei).

Conexiuni: R - plus, Bk - minus, Y - PWM, W - pulse out (probabil utilizat pt. feedback, nu l-am folosit).

 

mqdBOMz.jpeg

 

Link spre comentariu
  • 2 luni mai târziu...

Creează un cont sau autentifică-te pentru a adăuga comentariu

Trebuie să fi un membru pentru a putea lăsa un comentariu.

Creează un cont

Înregistrează-te pentru un nou cont în comunitatea nostră. Este simplu!

Înregistrează un nou cont

Autentificare

Ai deja un cont? Autentifică-te aici.

Autentifică-te acum



×
×
  • Creează nouă...

Informații Importante

Am plasat cookie-uri pe dispozitivul tău pentru a îmbunătății navigarea pe acest site. Poți modifica setările cookie, altfel considerăm că ești de acord să continui.Termeni de Utilizare si Ghidări