Fórum témák
» Több friss téma |
Fórum » Robotika kezdőknek
Aha.Hogy érted hogy le van vágva?Mekkora eredetileg és most?
Távirányításnál milyen adatokat viszel át? És milyen gyakran?Folyamatos vagy csak ha változik a vezérlőjel? Kiborg
Egy min., max. mérés mellékelve. A mérés úgy történt, hogy nagyon lassan körbefordítottam vízszintesen, úgy hogy közben végig az asztal lapján feküdt.
Levágva=0-ra le van vágva a külső borda. A belső vezetők a közepén meg vannak hagyva természetesen. Képeken szerintem látszik.
Adatátvitel: 4byte-n történik első egy szinkron byte értéke mindig 255 ebből következik, hogy a többi byte értéke nem lehet 255. Második a jojstick X tengely harmadik Y tengely negyedik 8db nyomógomb állása. Mindenhol tiltott a 255 azaz mind a 8 gomb benyomása is tiltott de ez fizikai képtelenség is. Az adatok folyamatosan mennek. A sebesség az alkalmazástól függ a kocsiban gyorsan kellett mert gyorsan ment a kocsi azt hiszem 9600baud a robot lassan megy meg 15s késleltetés is van ott 2400baud. Ezek a régi adatok. Ez az idei továbbfejlesztésen még változtatás alatt áll A PC-s illetve a BT-s kommunikáció miatt.
Szia Fizikus! Na most ott tartok (KALIBRÁLÁS), hogy ha lassan körbe fordítom, akkor "elmenti" a min. és max. értékeket... Holnapra hagyom a trigonometriát... Eddig tetszik?
Latom alakul a dolog... (gyorsan haladsz, nem ugy mint en a cikkemmel)
Erdeklodessel varom a fejlemenyeket!!!
Szia!
Értem.Köszi az infót.Másik kérdésem. Manchester kódolással küldöd vagy csak simán ? Milyen modulokat használsz ? A 4 byte közvetlenül egymás után megy vagy van valamekkora (pár ms) szünet? BT kommunikácó két AVR között is megoldható vagy feltétlenül egyik oldalra PC kell ? Üdv Kiborg
Semmilyen kódolás nincs. A modulokat egy barátomtól kaptam aki már vagy 20éve vette szóval ilyet már nem lehet beszerezni. De HE store-ban is vannak modulok azok is biztos jók. A bytek közt nincs szünet megy sörbe egymás után. A BT biztos megoldható két AVR közt is master BT modul kell meg az szerintem kicsit kacifántosabb.
A Bluetooth-t meg tudod úgy oldani, hogy az egyiket modult beállítod master-nek, a másikat slave-nek, össze párositod őket és beállítod a auto connect-et...
Na végre megírtam a firmware-t, erre nem fér bele az ATMega8-asba, az arctan függvény miatt, ami kb. meg 4x-ezi, 5x-özi a hex fájl méretét...
Tanácsra optimalizáltam -ffast-math kapcsolóval, de akkor meg annyira pontatlanul számolt, hogy teljesen elfogadhatatlan lett. Így kénytelen leszek tervezni, maratni egy nyákot az ATMega16-osomhoz, és azzal kivitelezni az iránytű modult.
Ha ez segít, C-ben így néz ki a Processing atan2() funkciója (-én mondjuk 48MHz-n, 32k memóriával használom, ott kényelmesen elfér):
Megkérdezhetem, hogy milyen kontrollert futtatsz 48MHz-en?
Köszi szkrep, de sajnos, nem csak az atan függvény miatt nem fér bele. Az volt az első, de aztán átnéztem a kódot és kiderült, hogy pár változómat nem int, hanem float-ként kellett deklarálnom, így már az atan függvény nélkül sem fért bele (ha azt ki //elem).
Kedves Fizikus! Sajnos igazad lett, hogy a kód nem fog elférni. Most azon gondolkozom, hogy ATMega16osra, vagy egy nagyon nagy ugrással ATMega128asra lépjek tovább... így is, úgy is nyákot kell terveznek és maratnom... Az ATMega128asba biztos belefér
Hasznalhatsz esetleg ATmega 168-at, vagy 328-at. Ezek kis tulzassal ugy is tekinthetok mint egy ATmega8 2x vagy 4x annyi flash memoriaval. Hatha abba belefer.
PIC18F2553 a kontroller. 4MHz kvarcból csinálja a belső PLL a frekit.
Szia!
Egy észrevétel: a max232-t fixen kötötted be, elvileg jó, de mi van ha RDX-t más célra akarod felhasználni (mondjuk akármilyen kimenetnek) Összeakad a két kimenet. Jártam már így, tedd azt is jumperelhetővé. Másba nem kötök bele, szimpatikus. Sajátomnál annyit csináltam, hogy minden port mellé tettem még +5V és GND-t is, hogyha a board látja el tápfessze az kiegészítő áramkörtl, akkor ne máshonnan keljen húzogatni a vezetéket, hanem mehet egy helyről/csatlakozóról. Üdv Kiborg
Szia! Köszönöm , igen, ez kimaradt! Jó ötlet, javítottam! A portok mellett nekem is ott a +5V és a GND, vagy hogy gondoltad? Minden kimenet mellett?
Igen, szerintem minden kimenet melle erdemes rakni GND-t es 5V-ot, ugy mint itt:
Bővebben: Link Erdemes az 5V-ot kozepre rakni...
Hááát, ízlések és pofonok....
Sajátomnál úgy csináltam, hogy két sor tüske 2x10. Két széle 5V (2x2 tüske), középen az AVRhez közelebbi felén a PIN-ek, másik oldalon pedig 8 db GND. Ha fordítva dugok rá valamit, akkor sincs gond, mert az 5v mindig a helyére kerül, de Fizikus megoldása is jó, az 5V fordítva dugás esetén is a helyén van. De a Te megoldásod is működik, csináld ízlés szerint, ahogy neked megfelel. ui:sorry, de nem voltam figyelmes és nem vettem észre múltkor a PINeknél a tápot. (másrészt én jobb szeretem ha egy sorban vannak a kivezetések, könyebb kiszámolni, hogy melyik is a melyik.) Üdv Kiborg Majd teszek fel képet a saját boardomról a jövő héten.
Szia!
Itt az én protoboardom. Mehet a JTAG tápjáról is, de mehet külső tápról is (akár 5V vagy 24V DC ig bármi). Üdv Kiborg
Na megvan az ATMega16os teszt lap, de semmiképp nem tudom rávenni az LCD-t a működésre ... Pedig elvileg már jó az iránytűs program ... de most úgy tűnik, elölről kezdődik minden ...
Neked valami saját gyártású JTAG-ed van, vagy gyári. Ha saját készítésű, akkor érdekelne ...
A paneled jól néz ki. A tiedhez képest az enyém óriási lett (és csúnya is ), de elvileg jó. Már átnéztem majdnem teljesen (zárlatot és szakadást keresve). A végén maradt az a verzió, hogy 10 pólusú csatlakozóba megy a 8 port, az 5V és a GND. Így ha ki akarom vezetni, akkor egy szalagkábelen kivezetem és azt akár egy próba nyákra, vagy bármire rákötöm, továbbá az IC mellett ott van minden lábhoz 2 csatlakozási pont.
Szia!
Igen, saját gyártású.JTAG ICE topic -ban ki van tárgyalva. Sikolyét alakítottam át saját magamnak megfelelően NEM SMD-re.A JTAG része még a soros porti időkből adódóan megvolt, de kellett az USB (egy ideig usbs telefon adatkábel volt a nyerő,de azt a win7 már nem ismerte fel) és volt egy elfekvő Mega8asom, így adott volt a kapcsoláshoz minden alkatrész. Üdv Kiborg
Hát azt nézem, hogy lehet, hogy a mega16 számolgat és átküldi UART-on az adatokat és a mega8 jeleníti majd meg. Valami miatt, ugyan az a kód más portokat mozgat a mega8on, mint a mega16on, számomra érthetetlen módon ...
Most az a legújabb verzió, hogy egy sima LCD-re íratom majd ki az értékeket, csak át kellett tervezni a dolgot, mert az a PortC-n volt eddig, de a PortC-n van az I2C is, ezért át kellett rakni PortD-re az LCD-t ... A Nokia3310-es kijelző valami miatt ... most jöttem rá mi miatt... na de mindegy ... a lényeg, hogy nem megy. Ha kész, akkor jelzem és teheted a cikkbe.
Kedves Fizikus! Valami miatt, amióta a mega16-tal kezelem az iránytű modult, teljesen megváltoztak a mért értékek ... Nem tudod mi lehet ennek az oka?
Kód első része: lásd text .
Ok, elnézést ... Mikor elment, már én is láttam, hogy picit nagyra sikeredett ...
Szerintem irjad ki az LCD-re a nyers meresi eredmenyeket (xhi, xlo, yhi es ylo bajtok erteket).
Es onnan haladj lepesenkent. A kodban nem latom hogy hol keresed meg a mert x es y ertekek minimumat es maximumat (ha esetleg konstanskent adtad volna meg a nyers mert ertekek alapjan, azt sem talalom). Ha ezeket hibasan adtad meg, akkor a sensitivity es range is hibas lesz. Az LCD-n levo adatokbol en erre gyanakszom.
A bekapcsolás után van egy kalibrációs for ciklus... csak az a két kódrészlet között van, de akkor felteszem az egész kódot ... Köszönöm az eddigi segítséget is! Remélem még nem fogyott el a türelmed, mert hozzám kell, mint látod... bocsi!
|
Bejelentkezés
Hirdetés |