Ahojte,
Potřebuji poradit jaký PIC co nejmenší a nejlevnější by byl vhodný pro jedinou následující úlohu?
Chci použít PIC pro úpravu servo signálu pro jeho bezdrátový přenos. Protože cílený bezdrát umí přenést pouze diskrétní hodnoty s rozlišením 1ms, chci signál upravit v PIC => "10x zpomalit" a na druhé straně v přijímači zase obnovit - počítám s určitou ztrátou přesnosti rozlišení servo signálu.
úloha pro jeden pic:
1) na 4, nebo minimálně 2, input pinech číst servo PWM signál se vzorkem 0,5 - 2,5ms / perioda vstupu 25ms
2) upravit pro každý pin přečtené na vzorek násobený 10x => 5 - 25ms / perioda výstupu 50ms
3) na 4, nebo 2, output pinech generovat upravený signál
druhý pic to pak bude dělat obráceně
Odhadl jsem, že by se asi hodil PICAXE-08M2 (3 vstupy a 3 výstupy), ale je ještě levnější alternativa? Např. pod 20Kč?
Předem děkuji.
PIC a úprava PWM
Re: PIC a úprava PWM
Tedy řešení pod 20kč to bych také rád viděl.
Jediné co vím tak modeláři používají na skenování příkaz PULSIN.
Osobně jsem to ještě nezkoušel, ale také by mě to zajímalo.
Jediné co vím tak modeláři používají na skenování příkaz PULSIN.
Osobně jsem to ještě nezkoušel, ale také by mě to zajímalo.
Re: PIC a úprava PWM
Tomu nerozumím, můžeš, prosím, ten druh přenosu nějak blíže specifikovat?hubacekp píše:... cílený bezdrát umí přenést pouze diskrétní hodnoty s rozlišením 1ms...
jrt
Re: PIC a úprava PWM
Pokusím se objasnit, ale nekomentujte, že jdu s kanónem (XBee) na vrabce (RC hračka)
Používám pro řízení robůtka (původně dětské RC hračky) Xbee připojené přímo na tranzistorový H můstek (psali jste o něm) bez hlavní desky.
S robůtkem nebudu vyměňovat žádná TxRx data. Funguje to na robotovi pouze přes Digitální piny (až 7 DIO myslím) Xbee - High/Low.
Zapojení jednosměrné komunikace:
vysílač:
Internet - Router - Arduino - Ethernet Shield - XBee
přijímač:
XBee - DI0/DI1 - tranzistorový H-můstek - motor řízení / motor pohonu
Výše popsané funguje a nyní chci přes XBee řídit serva, případně motor přes klasický H-můstek.
Můj dotaz se týkal fyzického omezení XBee popsaného zde: http://www.digi.com/support/kbase/kbase ... tl?id=2180
Extrakt: ...the maximum sample rate that can be achieved while using one A/D is 1sample/ms or 1KHz. => Z toho vyplývá, že změnu impulsu 0,5 až 2,5 ms s přesností myslím někde mezi 0,01 ms a 0,001 ms s popsaným limitem vzorkování XBee není možný. Proto chci servo signál "v čase natáhnout" přenést a pak opět (s určitou ztrátou přesnosti) převést do původního stavu.
Mohl bych to vyřešit i:
1) Picaxem/arduinem/jiné mcu přes příkazy TxRx, ale to jsem nechtěl
2) nechat původní hračkovou Rx2/Tx2 a ovládat přímo tu vysílačku, ale to jsem nechtěl
Používám pro řízení robůtka (původně dětské RC hračky) Xbee připojené přímo na tranzistorový H můstek (psali jste o něm) bez hlavní desky.
S robůtkem nebudu vyměňovat žádná TxRx data. Funguje to na robotovi pouze přes Digitální piny (až 7 DIO myslím) Xbee - High/Low.
Zapojení jednosměrné komunikace:
vysílač:
Internet - Router - Arduino - Ethernet Shield - XBee
přijímač:
XBee - DI0/DI1 - tranzistorový H-můstek - motor řízení / motor pohonu
Výše popsané funguje a nyní chci přes XBee řídit serva, případně motor přes klasický H-můstek.
Můj dotaz se týkal fyzického omezení XBee popsaného zde: http://www.digi.com/support/kbase/kbase ... tl?id=2180
Extrakt: ...the maximum sample rate that can be achieved while using one A/D is 1sample/ms or 1KHz. => Z toho vyplývá, že změnu impulsu 0,5 až 2,5 ms s přesností myslím někde mezi 0,01 ms a 0,001 ms s popsaným limitem vzorkování XBee není možný. Proto chci servo signál "v čase natáhnout" přenést a pak opět (s určitou ztrátou přesnosti) převést do původního stavu.
Mohl bych to vyřešit i:
1) Picaxem/arduinem/jiné mcu přes příkazy TxRx, ale to jsem nechtěl
2) nechat původní hračkovou Rx2/Tx2 a ovládat přímo tu vysílačku, ale to jsem nechtěl
Re: PIC a úprava PWM
Už trochů chápu.
U PICAXE to jde poměrně jednoduše:
PULSIN přečte délku servopulsu v desítkách mikrosekund
aritmetickým přepočtem získané číslo zvětšíš podle potřeby
Příkazem PULSOUT ho pomocí Xbee vyšleš.
Na druhé straně provedeš totéž inverzně.
Mikrokontrolér za 20 Kč se v malém bude špatně shánět, ale dovoluji si upozornit, že ve Snailshopu je PICAXE-08M2 za 49 Kč
U PICAXE to jde poměrně jednoduše:
PULSIN přečte délku servopulsu v desítkách mikrosekund
aritmetickým přepočtem získané číslo zvětšíš podle potřeby
Příkazem PULSOUT ho pomocí Xbee vyšleš.
Na druhé straně provedeš totéž inverzně.
Mikrokontrolér za 20 Kč se v malém bude špatně shánět, ale dovoluji si upozornit, že ve Snailshopu je PICAXE-08M2 za 49 Kč
jrt
Re: PIC a úprava PWM
Díky za odpověď. Díval jsem se ještě na ATtiny85. Šel by taky použít ?
Re: PIC a úprava PWM
Jen pro úplnnost: ještě jsem trochu bádal a budu to asi řešit přes přenos analogového PWM na XBee a časovač 555 pro generování PWM serva.
Re: PIC a úprava PWM
No, každý svého štěstí strůjcem:-) Jak to nakonec dopadlo?hubacekp píše:Jen pro úplnnost: ještě jsem trochu bádal a budu to asi řešit přes přenos analogového PWM na XBee a časovač 555 pro generování PWM serva.
“We’re all pathetic and creepy and can’t get girls. That’s why we fight robots.” –Kripke (TBBT)
Osobní web: adamh.cz
Osobní web: adamh.cz
Re: PIC a úprava PWM
po pravdě jsem se k tomu ještě nedostal a možná to nakonec nebude tak banální ovládat 555 napětím PWM (generuje ho XBee na dvou pinech)...
Nakonec možná skončím u XBee + PIC, nebo Arduino s příkazy po seriálu.
Nakonec možná skončím u XBee + PIC, nebo Arduino s příkazy po seriálu.