Stránka 1 z 1
spínací obvod pro 3 x IR majáky
Napsal: 22 úno 2012, 11:32
od agip125
Dobrý den, prosím o radu. Vytvářím takový projekt - navigace robota v prostoru (robot NXT s IR senzorem). Navigaci si představuji tak, že na pracovní plochu umístím 3 IR majáčky (3 obvody s IR ledkama) tohle AKO zapojení:
http://pandatron.cz/?490&555_a_556_-_zakladni_zapojeni
ale abych při psaní programu pro ten senzor nějak rozlišil, ze kterého majáčku přijímám signál, potřebuji, aby blikaly postupně např po 1 nebo 2 sekundách...zkrátka jak dosáhnout toho, aby 1.maják svítil 2s pak 2.maják 2s, pak ten třetí a zase dokola. Majáky nemohou blikat na různých frekvencích, protože senzor je na 1200Hz. Děkuji za každý nápad či názor jak ty majáky propojit nebo je tato myšlenka úplná blbost?
Napsal: 22 úno 2012, 11:56
od EKKAR
Pokud to může mít vzájemný propojení (nevadí drátové vedení mezi majáky nebo od nějaké "ústředny" k majákům), řešil bych to formou Johnsonova čítače CD4017 - jako zdroj signálu by mohla být NE555 a pro vyšší přesnost použít vyšší kmitočet (malý časovací kondenzátor = malá chyba v nastaveném intervalu) a snížit ho nějakým binárním čítačem na rozumný interval 1-2 minut. Tyto pulsy pak počítat obvodem 4017 - ten má 10 samostatných postupně aktivovaných výstupů a jeho cyklus se dá zkrátit na ty požadované 3 stavy. Výstupy posílit výkonovým spínacím obvodem nebo relátkem.
Kdyby ty majáky měly být nezávisleé, musely by mít buď nějakou synchronizaci v čase pomocí bezdrátového přenosu, nebo by musely mít velice přesné časovače s naprosto shodným cyklem a musely by se zapnout postupně v časovém intervalu, v jakém by měla celá sekvence následovat.
Napsal: 22 úno 2012, 12:00
od rnbw
Ako chces zistit, z ktoreho majaku prijimas signal, ked budu vsetky blikat rovnako?
Napsal: 22 úno 2012, 12:13
od Crifodo
Když ten robot potřebuje vidět na každý maják, tak maják vidí na robota, takže to můžeš udělat tak, že robot vyšle optický signál pro všechny majáky, po kterém první maják odpoví v t+n, druhý maják v t+2n, třetí maják v t+3n, a robot si v příslušném čase změří úhel od příslušného majáku. Má to tu výhodu, že majáky nebudou svítit, když to robot nebude potřebovat.
Napsal: 22 úno 2012, 13:29
od camel1cz
Není jasné celé zadání, ale aby mohlo cokoliv chytřejšího fungovat, musí
robot poznat z kterého majáku přijímá signál - tedy majáky musí posílat v signálu svou identifikaci.
Pokud je robot schopen směrově přijímat, pak není třeba synchronizovat a majáky mohou vysílat přes sebe - prostě robot scanuje prostor.
Pokud však poslouchá jen z eteru, pak je třeba řídit přístup k médiu (frekvenčnímu pásmu) a nebo roztáhnout synchronizační drát mezi majáky... v tomhle případě ale bude funkčnost toho robota dost omezená a moc mi to nedává smysl.
Tedy majáky by mohly být všechny stejné a např. pomocí switchů by se nastavovalo ID majáku - ten by pak vysílal svůj kód formou nějakého přerušovaného signálu (to vzhledem ke schopnostem robota).
Napsal: 22 úno 2012, 22:33
od EKKAR
Ty majáky by šlo odlišit třeba vysílanou frekvencí - nedokážu určit, jak velký rozdíl bude potřeba, aby robot identifikoval rozdíl ve frekvencích a pak by se podle toho orientoval.
Napsal: 22 úno 2012, 22:40
od camel1cz
EKKAR píše:Ty majáky by šlo odlišit třeba vysílanou frekvencí
Někde výše tazatel zmínil, že frekvenční rozlišení nelze, protože robot umí přijímat pouze jednu frekvenci - potom zbývá jen kód a la morseovka...
Napsal: 22 úno 2012, 22:49
od EKKAR
agip125 píše:... Majáky nemohou blikat na různých frekvencích, protože senzor je na 1200Hz....
Furt můžou vyrábět různou dobu jednoho bliknutí - budou dělat tzv. "burst" neboli různě dlouhý "balíček" impulsů základního nosného kmitočtu 1200Hz. První blikne půl vteřiny = burst bude dlouhý 500ms a bude mít okolo 600 kmitů nosné, druhý maják může fungovat 1s = 1200 period nosné a třetí maják 1,5s = 1800 period nosné. A neříkejte mi, že vyhodnotit rozdíl mezi impulsy dlouhými 500, 1000 a 1500ms nejde...
Napsal: 22 úno 2012, 23:06
od camel1cz
EKKAR píše:A neříkejte mi, že vyhodnotit rozdíl mezi impulsy dlouhými 500, 1000 a 1500ms nejde...
Určitě jde... pokud bude z každého směru poslouchat 1,5s a celkovou délku burstu bude porovnávat s 500, 1000 a 1500ms, je to řešení.
Dalo by se pak zkusit zkrátit ten detekční čas... robot by byl takhle asi zbytečně rozvážný.
Zpět k původnímu dotazu: řešení je tedy triviální blikač s chytře definovanou periodou, synchronizace netřeba.
Napsal: 23 úno 2012, 16:20
od agip125
V prvé řadě Vám děkuji za připomínky.
Senzor dokáže poznat sílu signálu a rozlišit 9 smeru ze kterých signál přijímá. Ovšem v jednom okamžiku pouze jeden směr, když na něj svítí IR svetlo z více smeru, vrati hodnotu toho nejsilnejšího, takže se obávám, že možnost s tím burstem (určitá perioda nosné frekvence) nepůjde, protože v jenom okamžiku na nej budou svítit třeba 2 majaky. Drátové propojení majáků mě nevadí - asi ta synchronizace pomocí časovacího obvodu bude jediná možnost.