Andrzej W.
Guest
Wed Oct 03, 2012 10:01 am
Kontynuując wątek BMSa zastanawiam się nad magistralą szeregową
(zrobioną na GPIO) umożliwiającą transmisje między układami o różnych
poziomach napięcia zasilania.
Dokładnie sprawa maiła by wyglądać tak:
- Połączone szeregowo w baterię ogniwa litowe, do każdego ogniwa
podpięty mikrokontroler nadzorujący ogniwo.
Każdy mikrokontroler musi wysyłać i odbierać komunikaty do/z
mikrokontrolera głównego który będzie podłączony do najniższego
potencjału baterii.
- Szybkość transmisji kilka, kilkanaście bajtów na sekundę.
- Ilość potrzebnych do transmisji IO mikrokontrolera 1-4.
- Każdy mikrokontroler nadzorujący ogniwo może pełnić rolę repeatera.
- Transmisja nie może pochłaniać energii (np. transoptory) a jej
implementacja nie powinna być kosztowna.
--
Pozdrawiam,
AWa.
Michoo
Guest
Wed Oct 03, 2012 2:14 pm
On 03.10.2012 12:01, Andrzej W. wrote:
Quote:
- Transmisja nie może pochłaniać energii
Nie ma takich.
Quote:
(np. transoptory)
Nie demonizowałbym.
Przy transmisji 57600bps i 20*8=160 bitach na sekundę do transmisji
nadajesz przez niecałe 3 promile czasu. Przy 10mA pompowanym w diodę
daje to średni prąd 27uA (a mniej jeżeli założysz, że nie wysyłasz
samych '1'). Pracujący procesor w czasie transmisji pochłonie kilka razy
więcej.
Mam też pewien pomysł na separację MOSami ale w razie jego wykorzystania
projekt modułu komunikacyjnego udostępniasz na zasadzie open hardware -
pasuje?
Quote:
a jej
implementacja nie powinna być kosztowna.
Możesz to dopiąć bezpośrednio do UARTa i wykorzystać phy z procesora (w
tym odbiór asynchroniczny podczas gdy core śpi) zamiast rzeźbić.
--
Pozdrawiam
Michoo
Andrzej W.
Guest
Wed Oct 03, 2012 2:55 pm
W dniu 2012-10-03 16:14, Michoo pisze:
Quote:
Mam też pewien pomysł na separację MOSami ale w razie jego wykorzystania
projekt modułu komunikacyjnego udostępniasz na zasadzie open hardware -
pasuje?
Udostępniam:
http://www.bpa.com.pl/pomysly/rowery/zasilanie/dynamo_1
Co do implementacji na MOSach, to są takie co albo pobierają prąd czas
cały i te mnie raczej nie interesują, albo przerzutniki RS pobierające
prąd tylko w trakcie przełączania, ale one zaś wymagają sporo
tranzystorów i najlepiej globalnego sygnału reset ustawiającego całość
logiki w stan znany.
Masz jakiś inny jeszcze pomysł?
Quote:
a jej
implementacja nie powinna być kosztowna.
Możesz to dopiąć bezpośrednio do UARTa i wykorzystać phy z procesora (w
tym odbiór asynchroniczny podczas gdy core śpi) zamiast rzeźbić.
Pisząc "implementacja" miałem na myśli otoczkę sprzętową wokół
mikrokontrolera użytą do przesunięcia poziomów napięcia.
--
AWa.
BartekK
Guest
Wed Oct 03, 2012 3:05 pm
W dniu 2012-10-03 12:01, Andrzej W. pisze:
Quote:
Kontynuując wątek BMSa zastanawiam się nad magistralą szeregową
(zrobioną na GPIO) umożliwiającą transmisje między układami o różnych
poziomach napięcia zasilania.
Dokładnie sprawa maiła by wyglądać tak:
- Połączone szeregowo w baterię ogniwa litowe, do każdego ogniwa
podpięty mikrokontroler nadzorujący ogniwo.
Każdy mikrokontroler musi wysyłać i odbierać komunikaty do/z
mikrokontrolera głównego który będzie podłączony do najniższego
potencjału baterii.
- Szybkość transmisji kilka, kilkanaście bajtów na sekundę.
- Ilość potrzebnych do transmisji IO mikrokontrolera 1-4.
- Każdy mikrokontroler nadzorujący ogniwo może pełnić rolę repeatera.
- Transmisja nie może pochłaniać energii (np. transoptory) a jej
implementacja nie powinna być kosztowna.
A nie możesz "zapiąć się" do jednej spólnej magistrali przez kondensator
każdym z mikrokontrolerów, czyli na magistrali dostaniesz tylko f>0 same
szpilki, i nadawać/odbierać z przetworzeniem f1=0 (np 1kHz), f2=1 (np
330Hz) - możesz zrobić to nawet softowo, i całkiem spore prędkości
uzyskać...
--
| Bartłomiej Kuźniewski
| sibi@drut.org GG:23319 tel +48 696455098
http://drut.org/
|
http://www.allegro.pl/show_user_auctions.php?uid=338173
Andrzej W.
Guest
Wed Oct 03, 2012 3:10 pm
W dniu 2012-10-03 17:05, BartekK pisze:
Quote:
A nie możesz "zapiąć się" do jednej spólnej magistrali przez kondensator
każdym z mikrokontrolerów, czyli na magistrali dostaniesz tylko f>0 same
szpilki, i nadawać/odbierać z przetworzeniem f1=0 (np 1kHz), f2=1 (np
330Hz) - możesz zrobić to nawet softowo, i całkiem spore prędkości
uzyskać...
Całkiem ciekawy pomysł, dziękuję.
--
AWa.