Forumi


Povratak   PC Ekspert Forum > Računala > DIY i Tinkering
Ime
Lozinka

Odgovori
 
Uređivanje
Staro 30.05.2021., 11:42   #1
Velikus
Premium
Moj komp
 
Velikus's Avatar
 
Datum registracije: Apr 2004
Lokacija: Zagreb
Postovi: 428
Robotika 101 - ESP32 - Arduino cpp u Micropython ili Circuitpython

dobio sam robot kit u dijelovima
temelj je esp wroom 32

shema:


svi upravljacki programi su napisani u cpp i hard kodiranjem tih datoteka se moze upravljati robotom. uz to, fali dokumentacije o tehnikalijama jer koliko sam vidio, ipak je custom pcb u pitanju

e sad pitanje:
htio cpp firmware nekako prebaciti u python da se robotom moze lako upravljati koristeci py sintaksu.


micropython (+thonny IDE) radi na osnovnoj esp32 plocici, ali je zastekalo kod pristupanja CAN busu... i 8x8 displayu, a pogonski motori su od plocice s displayom spojeni CAN busom

motori su DRV8871


svaka pomoc je dobro dosla!

lijep pozdrav
__________________
"Ups, sam neš uprsk'o?"

Zadnje izmijenjeno od: Velikus. 31.05.2021. u 11:23.
Velikus je offline   Reply With Quote
Staro 30.05.2021., 12:15   #2
segregator
Propali Amigaš
Moj komp
 
segregator's Avatar
 
Datum registracije: Jan 2003
Lokacija: Nin
Postovi: 6,959
Možda ovdje dobiješ kakvu ideju

https://codewith.mu/

Kompatibilan je sa ovim kitom

https://morpx-docs.readthedocs.io/en...roduction.html

koji koristi istu arduino pločicu
segregator je offline   Reply With Quote
Oglasni prostor
Oglas
 
Oglas
Staro 30.05.2021., 13:52   #3
Velikus
Premium
Moj komp
 
Velikus's Avatar
 
Datum registracije: Apr 2004
Lokacija: Zagreb
Postovi: 428
imam sav kod napisan u cpp i htio bih dodati layer pythona sa osnovnim funkcijama

od cijele price napisane u "hrpi" cpp fajlova i "tisuca" linija arduino cpp kôda bih htio da stvar radi u pythonu i dovoljno bi bilo ovih nekoliko funkcija:

npr

upravljanje motorima -
motor1.on(), motor1.off(), motor1.kreni(brzina)

upravljanje servo motorima - okreni za x stupnjeva (nažalost nemam 360° servo, vec 300°)
servo1.desno(stupnjeva, korak)

izlaz na 8x8 display -
display.out(string)... string ili 2D matrica...

ocitavanje sa senzora (za udaljenost, za praćenje linija...)
senzor1.value()....
__________________
"Ups, sam neš uprsk'o?"
Velikus je offline   Reply With Quote
Staro 30.05.2021., 14:24   #4
segregator
Propali Amigaš
Moj komp
 
segregator's Avatar
 
Datum registracije: Jan 2003
Lokacija: Nin
Postovi: 6,959
Citiraj:
Autor Velikus Pregled postova
imam sav kod napisan u cpp i htio bih dodati layer pythona sa osnovnim funkcijama
Onda

https://github.com/DanielSaromo/PyDuinoBridge
segregator je offline   Reply With Quote
Staro 31.05.2021., 10:28   #5
Velikus
Premium
Moj komp
 
Velikus's Avatar
 
Datum registracije: Apr 2004
Lokacija: Zagreb
Postovi: 428
@segragator:
ne razumijem kak stvar funkcionira jer sam ubačen u vatru i ne mogu se fokusirati na neke detalje, a ne znam ni osnove robotike, tj. kako se upravlja pojedinim dijelom hardvera....

programiranje mi nije strano, ali programiranje za neki komad hardvera, odnosno, pisanje firmware jest!



imam jos jedno pitanje na koje ne mogu naci odgovor:



jel svaki robot kojeg se može naći na netu radi na svojoj specifičnoj PCB pločici ili je moguće prilagoditi kod i za neku drugu pločicu?

robot koji imam je prilično dobro opremljen i moglo bi se svašta pripasivati
...ali kako pripasati kod ?


https://www.youtube.com/watch?v=D7hvI_Tb0o4


gledao sam dokumentaciju "svog" robota

esp32 > can > 8x8 display > can > drv8871

što mi izgleda prlilično slično ovome gore, ima gotovo isti hardver i sad bih to htio prilagoditi ...
... jel to inače ide tako kod robotike ili nema pripasivanja?

za "pripasivanje" i dobivanje rezultata kao gore u videu bih sve ostavio u cpp, prilagodio dijelove i baš bi me bilo briga....



a originalno, obzirom da bi robot kojeg sam dobio trebao biti za edukaciju
(metodička igračka na kojoj djeca uče pisati komande, očitavaju sa senzora...
...nije problem napraviti da robot vozi, već da pametno vozi......)

micropython ima problem sa can bus komunikacijom, ali
https://pumbaa.readthedocs.io/en/lat...rs.drivers.Can


prikupio sam "sve" soft elemente, ali ne znam ih poštrikati,
pa bih molio malo opširniji odgovor




ps.
kako naučiti isprogramirati robota od nule za 2 tjedna - u micropytonu
- da barem zavrti kotače i pokaže neki smajlić na 8x8 displayu




pps
na MITu su 70tih imali turtle robota (kotrljajući šlojder) koji je ostavljao trag na podlozi....

i moguće ga je bilo upravljati funkcijama fd(50) rt(90) i sl



edit:
auzmeš:
dodao sam robotika101 u naslov jer sam osvijestio da kod custom robota ima puno nepoznanica
(podforum robotika jednog dana?)

otkud krenuti? ima li neka knjiga (tutorial) koja govori o sastavljanju robota na hw razini pa kako od lemljenja svakog posebnog pina dodje do izrade pcb plocica? kako uopce dizajnirati pcb?
i kako onda prema user dizajnu napisati program i upogoniti stvar?
__________________
"Ups, sam neš uprsk'o?"

Zadnje izmijenjeno od: Velikus. 31.05.2021. u 13:15.
Velikus je offline   Reply With Quote
Oglasni prostor
Oglas
 
Oglas
Odgovori


Uređivanje

Pravila postanja
Vi ne možete otvarati nove teme
Vi ne možete pisati odgovore
Vi ne možete uploadati priloge
Vi ne možete uređivati svoje poruke

BB code je Uključeno
Smajlići su Uključeno
[IMG] kod je Uključeno
HTML je Uključeno

Idi na