-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Měření proudu #55
Comments
|
Tak int32 je jasnej, ale po drátě to běhá jako varint https://developers.google.com/protocol-buffers/docs/proto3#scalar Ale klíďo ať tam běhají uA, pár bajtů nás na 1Mbit nezabije. Ale záleží za zbytku řešení. EDIT: Jirkův use case moc do detailu neznám. Mluvil o použití motoru bez enkodéru, proud je pak nějaká zpětná vazba na doraz či co. |
Nejvíc easy by bylo asi prostě to přidat do period. zprávy, co generuje Power.cpp každejch 250 ms. Ale není to dobrý řešení. |
Za mě:
|
Ok, další myšlenka: Asi chceme předělat ADC měření tak, ať to třeba na 500Hz vzorkuje všechny chtěné kanály a sype do nějakých filtrů (moving average). Umí to tu "conversion sequence", kdy to převede chtěné vstupy bez intervence CPU, takže se to takto nabízí. Pak se hodí mít efektivní rozlišení třeba 16 bitů, což vznikne součtem šestnácti 12-bitových vzorků. Vzorkování se tedy oddělí od komunikace, nejnovější výsledky jsou vždy k dispozici, transakce neblokuje na ADC. |
Naprosto souhlasím s @yaqwsx - takhle nějak jsem si to API původně představoval :-) ADC měření je podle mě potřeba udělat různě pro serva a pro motory + zbytek. Naopak měření proudů skrz serva filtry má (f0 = 160 Hz) - počítal jsem s měřením na 100 Hz, pravděpodobně startovaném časovačem generujícím servo signál (ale matně se mi plete, že to už nešlo hardwarově). Díky těm filtrům ale není synchronní vzorkování potřeba, takže to může běžet, jak to vyjde. Proč je zbytek na ADC s motory a ne u serv? Tak nějak to vycházelo nejlépe s ohledem na spouštění jednotlivých ADC konkrétními časovači. Pro motory je potřeba využít prioritních injektovaných měření. Správné nastavení všeho dle výše popsaných kritérií by mělo snad být implementováno v mém testovacím kódu (zatím bez té kalibrace podle interní reference). |
Proudové triggery by mohly být fixně povolené s nastavitelnou hranicí (hysterezí?) |
@cednik Injected na motory je potřeba protože to sedí na TIM1_TRGO? |
Půjde-li nastavit větší limit, než je možné dosáhnout, pak je trigr efektivně vypnutý, tudíž za mě asi může být. |
Jj, tak nějak si to pamatuji :-) |
Jirka potřebuje měřit proud serv a motorů na naší úžasné desce.
Design decisions:
The text was updated successfully, but these errors were encountered: