Fórum témák
» Több friss téma |
Fórum » Robotika kezdőknek
Köszi, a részletesd választ.
I2C-nél nem működik szintillesztésként az ellenállás osztó?
Szivesen, csak akkor működne, ha mindig csak a mikrovezérlőtől az eszköz fele folyna a kommunikáció, de mivel neked kétirányú kommunikációra van szükséged ezért nem jó, mert a giro logikai magas szintje 3.3V és ezt a mikrovezérlő még nem érzékelné magasnak az ő logikai szintje szerint. Ha csak egyszerűen összekötöd mindenféle szintillesztés nélkül akkor azzal tönkre teheted a giro-t, mert annak a maximális feszültsége minden lábán max 3.6V lehet az adatlap szerint. Beteszel egy olyan szintillesztőt amit említettem (MAX3378) és az mindent megold, mivel kétirányú (a szintillesztőt be kell táplálni 5V-al és 3.3V-al is). Ha van 3.3V-os mikrovezérlőd akkor nem kell a szintillesztő.
Köszi, már rájöttem miután végiggondoltam.
A 3.3V-ot mergeszi magasnak a PIC.
Az avr-ek is elfogadják a 3,3V ot UART logikai magasnak, és ha az avr felől jövő 5V logikai magasat kettéosztod, 2,5V ot elfogad a 3,3v os rendszer magasnak(bár itt pontosan is lehetne osztani, nem csak 1-1 arányban, de nem szükséges...)
Én ezekre egy btm-222 uart modulnál jöttem rá...
Szia,
Ez egy igazán részletes leírás, sajnos a gyártók már nem mindig követik ilyen pontosan ezeket a doksikat. Én is egy ilyen leírás alapján indultam el, mégsem vagyok elégedett az átvitellel. Ezekben a doksikban ideális esetek vannak, viszont ha teljesen pontosan leköveted mit mikor kell rángatni nem egyszer félre siklik a végeredmény. Egy hasonló gironál például az istenért nem akart visszaadni értelmes adatot, amíg egy sokadik fórumon rá nem akadtam 3 pici sorra miszerint az eszköznek kell 3 plusz órajel ciklus a bájtok közt. Ha pedig slave oldalról akarok csatlakozni hiába tekerek minden vezetéket az áthallás miatt pár 100 bájt után mindig becsúszik a hiba. Nincs esetleg egy ettől frissebb dokumentációd ami az azóta elterjedt integrált verziók sajátosságait is tartalmazza?
Szia.
Ez igaz, néha nálam is bejött egy-egy hiba de nem tudtam rájönni, hogy miért, de mivel nem volt annyira fontos és amúgy is csak ritkán jelentkezett ezért nem is nagyon néztem utána. A a másik amivel gondom volt az egy giro ami 400kHz-en is képes működni, igaz én csak 100kHz-en járattam de nem akarta megtalálni az eszközt. Rákötöttem egy oszcilloszkópot és úgy már működött, ha levettem a szkóp szondát megint nem ment ezért kellett tegyek egy-egy 470pF-os kondit az SCL/SDA vonalakra (1nF-ossal nem mindig működött jól). Azért tettem fel azt a leírást, mert nekem most csak az volt magyarul, de van egy frissebb angolul is, csatoltam.
Köszönöm, áttanulmányozom ezt is.
Nekem most főleg az a bajom hogy vigyem át a régi atom stabil (szoftverből kezelt regiszterek) 8 bites PIC progijaimat a 32 bites csili vili saját cím detektálós csodákba. Ha végre kész lehet újra felteszem a robotom a már kifinomultabb okosított agyaival
Ötletet szeretnék kérni. Még mindig a robotporszívónál tartok (kb megvan minden csak várom az áttételes motoromat).
Hogyan lehet(ne) azt megcsinálni, hogy amikor merül az elem, akkor a robot megkeresi a töltőjét? A kérdés arra vonatkozna, hogy HOGYAN, mi alapján találhatja meg a a töltőállomást?
-Nem tudom, milyen algoritmus szerint megy a robot, mennyire bonyolult tárolni az útvonalat. Ezután csak vissza kel menni.
-Iránytű IC, ha nem elég pontos akkor a töltő közelébe egy erős mágnes, és becsapja az iránytűt. Ekkor "toeronyiránt" mehet a robot. Ha akadály van akkor bonyolodik a dolog. -rálátás ha van, akkor erős infra adó és odamegy.
Hát.. útvonal tárolás nekem is eszembe jutott... de szerintem az nem kivitelezhető. Ha mondjuk 5 órán át porszívózik, akkor visszafelé is 5 óra az út...
Infra adó ami szerintem az egyszerűbb megoldás... miközben merül.. figyelgeti.. és amikor megtalálja odamegy... Ha nem akkor leáll. De nem tudom, egy ilyen infra adó milyen távolságot tud... nehezen tudom elképzelni... Hacsak: A szoba közepére rakom (amolyan sorompó féle), és mondjuk 50%os töltöttségnél, ha belemegy, akkor ráhúzza magát tölteni. Az adó villog egy frekivel, a porszívó meg csak akkor hisz neki, ha az a freki stimmel (ezt egyenlőre nem tudom hogy lehet kezelni a PICben) Iránytű IC? ez érdekes... bár nekem fura... de érdekes...
Iránytű IC-t még nem használtam.
Az infrás megoldás egyszer volt a magyarokaarson versenyen. Ott az volt a baj hogy 27objektum sugárzott. Míg csak egy addig nem volt gond. Nem kell eszeveszett teljesítmény. A TV távirányító sem az... Csak rálátás kell.
Én ultrahangos adókat tennék a töltő két oldalára, mondjuk 40 centi balra 40 jobra, egy fal mellé helyezve.
Ekkor ki lehet háromszögelni és pár centi pontosan bevezetni a robotot. A "finom" pozícionálást pedig valami kényszer pályás rávezetéssel eszközölném ki. Egy ilyen próbám volt, 7-8 centi pontosan be tudtam határolni hol is van az adóhoz képest a robi, de nem is kell ennyire, a töltő állomás mérete is egyszerűsítheti. Ha pld egy 50 centi sugarú félkör az állomás a két szélén a két adó befele pedig sugárirányú vonalak vezetnek megközelítés után átválthat egyszerű vonalkövetésbe és kész is. Egyedüli probléma, hogy a szoba valószínűleg nem üres ezért kerülgetni is kell.
Arra gondoltam, hogy a IR led villogna, mondjuk 12 khz-el. (ez jutott eszembe, de bármi lehetne, csak ne olyan mint a távirányítóké..). A gép előbb kideríteni, hogy megfelel e 12 khz-nek a fogott IR jel, és ha igen, akkor fogadná csak el. Felé fordulna és egyenesen arrafelé menne (az elején úgyis lesz ütközésvizsgálathoz 2 IR tranzisztor, azokkal lehetne figyelni, hogy pont arrafelé haladjon)
(arra nincs ötletem egyenlőre, hogy a gyakorlatban a PIC hogy deríti ki milyen frekvenciával villog a LED, de ez majd akkor lesz fontos...)
Marsversenyen hangfrekis sinussalvolt modulálva. Ha szoftveresen akarod, akkor furier transzformáció kell, ami elég bonyolult számítás.
A másik hogy elég meredek sávszűrővel egyenirányított jel amplitudóját nézed AD-vel. Erre a megoldásra, az akkori verseny portálján volt egy digit. szűrő. Nézz szét ott.
Srácok!
Az mind szép és jó, hogy infrával toljátok a robotnak az irányfényt, de mit csináltok a visszaverődéssel? Ha a tv-re irányítom a távot, akkor működik, és ha a falra, akkor is! Nyilván kell az adóteljesítmény hogy messzire menjen az ir fény, de ezzel az erővel símán megfejeli a falat, mert onnan látja a fényt! Tudtok erre valami megoldást, hogy hogyan lehet megkülönböztetni a direkt sugárzást a visszaverttől?
Szerintem ezt úgy a legegyszerűbb megoldani, ha mindig a legerősebb jelet vennéd figyelembe.
(gondolom több érzékelőd lesz, min 4-6, akkor könnyen meg lehet állapítani, melyiket éri legerősebb infrafény...)
Hát ez érdekes.
Én arra gondoltam, hogy a porszívó 2 oldalán lenne 1-1 IR tranyó. Ha az érzékel IR jelet, akkor megáll, megvizsgálja a jelet, hogy az e az (pl jó e a freki, vagy nem tudom, hogy lehetne megcsinálni.. ). Eközben BENNE áll a IR fénycsóvában.. vagyis a falra árnyékol.. onnan nem kaphat jelet. Én ezt valami lehetőleg keskeny sugarú, amolyan sorompóként képzeltem el. Ha az az, akkor ráfordul és nosza. (esetleg lehetne olyat csinálni, hogy a töltőn is legyen egy PIC. És IR ledekkel komminukálnának? Sztem a freki szűrő egyszerűbb lenne, de azt egyenlőre nem értem-nem tudom hogyan működik. Szval, ha a robot talál egy IR jelet, akkor villog neki kettőt, mire a töltő villog neki vissza hármat. Ha ez ok, akkor indul a megközelítés. Fölöslegesen bonyolítom? (valahogy ez az érzésem)
Szerintem ez a koncepció nem az igazi.
Eleve ahhoz, hogy tudjuk modulálni az átvitelt (ezáltal zavarérzéketlen legyen), érdemes egy vevőt használni (pl. tsop1736). Ez normál kommunikációhoz szerintem ideális megoldás. Ahhoz, hogy a jel erősségét tudjuk mérni, már nem használható a tsop, mert nincs kivezetve csak a végtermék. Tehát gyártani kell egy saját vevőt. Ez már annyira nem egyszerű, mert pl. a tsop-ba elég sok minden bele van suvasztva ahhoz hogy jó legyen. Ezt újra fel kellene találni, és nem biztos hogy ér ennyit az egész. De ha eddig el is jutottunk, akkor még mindig ott a probléma, hogy meg kell különböztetni a közvetlen vett jel erősségét a visszavert jeltől. Tegyük fel, hogy ülök a kanapén, és lövöm a tv-t! Amit a tv vesz, az valójában összemérhető nagyságrendű jel, mint amit a falra lőve fog érzékelni. Hovatovább a leves sokkal drágább mint maga a hús. Amióta megkérdeztem, azóta agyalok én is ezen, és gyakorlatilag semmit nem találtam ezügyben. Sejtésem szerint esetleg a fázismodulációval lehetne valamit kezdeni, de még csak árnyékot kergetek.
Én régebben gondolkoztam egy egyszerű helymeghatározási rendszeren, amihez kell 1db rádióadó( akármilyen, lényeg hogy rádiófrekvenciás) ami a mozgó tárgyon van és 3db fix vevő(vagy fordítva is lehet, csak akkor több adó kell. ) és ezeken a hullámhosszokon semmilyen kommunikáció nem folyna, csak "térerősség" mérés, ebből lehetne helyzetet meghatározni.
Emellett pl a mozgó egységgel lehetne bluetooth-on, vagy más frekin kommunikálni uartton... Még nem kezdtem bele a megvalósításba, talán szoba méretben nem is lehetséges, de talán működhet...
1.) Egyáltalán nem biztos hogy a porszívó valóban kitakarja a fényforrást! Nem csak közvetlen visszaverődés létezik, hanem lehet akár többszörös is! Például verődik egyszer a fotel lábáról, onnan a tükörre, onnan meg a robotra. Máris meghülyült a szerencsétlen.
2.) Tényleg feleslegesen bonyolítod. A folyamat összességében ez: megnyomod a gombot, és a vevőoldalon addig lesz 5V, amíg el nem ereszted. Ez azért jó, mert külső fény, és egyéb hatások alig befolyásolják a folyamatot, zavarérzéketlen a rendszer. A moduláció esetedben azt jelenti, hogy a forrásnál megnyomod a gombot (ez ugye egy egyszeri esemény), ami elindít egy folyamatos színuszhullámot pl. 36kHz-en. Ebben a pillanatban ugye az infra led 36kHz-es frekvencián világít (villog), egészen addig amíg a gombot el nem engeded. Ez volt a moduláció. A gomb nyomását moduláltad 36kHz-el. A fény áthalad a levegőn, eljut a vevődbe. A vevő érzékeli a 36kHz-es fényvillogást, és elektromos árammá alakítja. Ez 36kHz-es frekvenciájú elektromos jel lesz, ami erősítés után tovább mehet a szűrőbe. A szűrő (feltételezve a jó tervezést) amikor megkapja a 36kHz-et, a kimenetét aktívvá teszi (pl. 5V jelenik meg rajta), egészen addig, amíg kapja a 36kHz-et. Amikor már nem kapja, akkor visszaáll alapállapotra (0V). A vételt mindenestül megcsinálja a tsop helyetted. Ezért szoktam ajánlani. Természetesen nem csak 36kHz-et használhatsz, de erre lehet kapni olcsón vevőt. Tovább szokták biztosítani azzal, hogy nem csak egy gombot nyomogatnak, hanem egy azonosító kódot küldenek át, és csak akkor fogadják el helyesnek a vételt, ha ez a kód megérkezett. És lehet még tovább bonyolítani, de szerintem erre már nem lesz szükséged.
Pont az a bajom nekem is ezzel, amit mondtál is! Szoba méret! Szerintem n*10m-es nagyságrendben értékelhető térerőváltozást nem egyszerű mérni.
Én akkor már inkább valami optikai rendszerben gondolkodnék. Arra gondoltam, hogy egy "vetítőgépet" lehetne felrakni az egyik sarokba, ami fényhálót vetít, de nem egyszerre, hanem csíkonként. Lenne egy bármilyen (rádiós/infra/stb) adó, amivel szinkronozni lehet a háló megjelenését. Tehát az ADÓ küldi a csomagot, hogy "vízszintes 1.". Ezután a vetítő kivetíti a háló első vonalát. Következő, hogy ADÓ szól: most jön a "vízszintes 2." stb. Ugyanígy a függőlegesekkel. A robot meg csücsül valahol a sötétben, és figyeli hogy mikor kapja el egy csóva. Ha megtalálja, akkor a datagramból tudja hogy ez éppen mi volt (vízszintes/függőleges és hányadik). Így két pásztából már tudja is hogy a hálóban hol van. Most találtam ki, de szerintem ez még működhet is. Ami nehézség, hogy a vetítőt meg kell csinálni (pl. lézerrel), és felléphetnek torzulások a terepviszonyok miatt, továbbá elképzelhető, hogy a robot pont árnyékban van, és nem kap semmit. Elvileg ezek kiküszöbölhetők azzal, ha nem a sarokból vetítünk, hanem a plafon közepéről.
Ha az akadalyerzekelo szenzornak infra LED-et es infra tranzisztort hasznalsz, akkor nem celszeru a dokkolohoz is infravoros beacon-t (iranyfeny) hasznalni. Meg ha az valamilyen frekvenciaval modulalt is.
Szerintem jobb megoldas, ha a robotra raksz egy hangforrast (ultrahang), a szobaba 3 sarkaba pedig egy-egy mikrofont. Igy haromszogelessel meghatarozhato a robot helyzete. Bluetooth-on vagy wifi-n keresztul pedig taviranyitassal elvezerelheto a dokkoloig. Bővebben: Link
Nem sikerult megtalalnom azt a weboldalt, amit nehany honapja olvastam a hang alapu lokalizaciorol.
Ezeket talaltam helyette: Bővebben: Link Bővebben: Link 2 Bővebben: Link 3
Esetleg valamilyen vonalkövetős rendszerhez mit szólnál? Nem tudom mennyire kivitelezhető a szobában, de egyszerű lenne, mert nem kell egy külső feldolgozó rendszer is... Pl azt is meg lehet oldani, hogy csak a szobában a falak mentén megy a vonal, és a dokkoló állomáshoz vezet... és azt amikor merül atz akku, megkeresné a robot...
Vagy, mint a robotok a marson versenyen is volt, a plafon ra kell egy kamera, amit a PC feldolgoz, és a robotod tetején 2 feltűnő szín van, amit tud követni a pc színkövető programja, és elirányítaná a robotod a dokkolóhoz.(bár ez már eléggé bonyolult programot igényel)
Hát nem tudom. Nekem ez a háromszögelés dolog valahogy nem szimpi. Lehet hogy azért mert elképzelésem sincs hogyan lehet ezt egy PIC-cel megoldani (jut eszmbe: "pic" vagy "pik"?). Vagy csak azért, mert úgy gndolom (nem biztos hoyg jól), hogy ha szobámban egy ultrahang visít folyamatosan, az nem tesz jót az idegállpotomnak.
Esetleg gondoltam olyanra is, hogy a mozgáokat tárolja egy x,y változóban ami megmutatja, hogy kezdőponttól (töltő) milyen irányban van a gép. Ezek alapján visszatalálhat... Úgy kell mozognia, hogy x,y 0,0 legyen. Vélemény?
Felejtsd el!
Ezzel a módszerrel csak azt tudod követni, hogy mennyit fordul a kerék. De azt már nem veszed észre, ha a kerék megcsúszik! Márpedig ha nekimegy valaminek, indul, megáll, vagy csak kanyarodik, akkor csúszni fog, és ezek az akár egészen kicsike hibák összeadódnak. Nem fog visszatalálni a töltőhöz. Az ultrahangnak amúgy nem feltétlenül kell folyamatosan visítani, lehet hogy csak amikor be van kapcsolva a robot, és akkor is csak bizonyos időközönként (pl. 10s). Ez arra elég lehet hogy betájolja magát, addig meg mehet offline a saját érzékelői alapján. Nekem egyébként fenntartásom van ezzel a háromszögeléssel. Fizikus: Hogy oldod meg, hogy az ultrahangos tájékozódást (a háromszögelőset) ne kavarja meg a szobában elhelyezett tárgyak (kanapé, asztal, stb) sokasága??? Ezt ha korrigálni akarod, akkor már túl sok a kötöttség nem? Vagy egyszerűen felpakolod a sarkokba a mikrofonokat, és amit kapsz azt kapsz? Mennyire befolyásolják a terepviszonyok a terjedést?
Hi, valakit érdekelne egy 6lábú robot cikk formájában? Ha igen megírom a részletes cikket ide a fórumra, de ha nem nem érdemes vesződnöm vele...
Bővebben: Link |
Bejelentkezés
Hirdetés |