Fórum | MyPower.CZ | Obnovitelné zdroje energie - energetická soběstačnost | Poslední návštěva: ned srp 09, 2020 9:54 pm


ATtiny85 + Uno komunikácia

Automatizace, řízení, měření, logování a programování s využitím platformy Arduino.
PředchozíDalší

Re: ATtiny85 + Uno komunikácia

Příspěvekod kodl69 » stř pro 19, 2018 9:16 am

Spíš bych potřeboval vědět, jestli musím osazovat i "resetovací" obvod, tj jestli je třeba zpoždění resetu při připojení napájení, nebo sse to attiny korektně rozjede i bez toho. Jsou to sice dvě součástky, ale 100x dvě součástky je 200 součástek po 0.2Kč...
Desky pro variantu s odporem už jsou na cestě z číny, zaplatil jsem jakousi dražší dopravu, tak to tady po novým roce bude, a snad budu mít trochu času to nachystat do dárkovýho balení.
ostrov 4600Wp neustále ve stádiu zrodu: 6x noark CHSM6610P250, 6x250Wp z I4wifi, 6xTratek 275Wp, 4x Auria 120Wp, midnite classic 150 lite+whizbang jr., 16S a různě P cca 300Ah Winston, Ex Powerjack 8kW (momentálně samodomo cca 6kW). 48V DC rozvody a spotřebiče.
kodl69
 
Příspěvky: 4714
Registrován: sob črc 19, 2014 7:56 pm

Re: ATtiny85 + Uno komunikácia

Příspěvekod pete » stř pro 19, 2018 10:13 am

Resetovací obvod není nutnej. ATtiny obsahuje obvod, kterej sleduje úroveň napájecího napětí a když detekuje zapnutí napájení tak spouští čítač pro zpoždení reset signálu. Stejně tak aktivuje okamžitě reset při poklesu napájecího napětí. Je to popsaný v datasheetu v kapitole 8.2.1 Power-on reset. AVR mají na reset vstupu interní low-pass filtr. Externí pull-up a případně kondenzátor a ochranná dioda na RESET vstupu se doporučuje v zarušeným prostředí. Tohle je zase popsaný v application note AVR Hardware Design Considerations v kapitole 3.
pete
 
Příspěvky: 59
Registrován: úte srp 04, 2015 8:19 pm

Re: ATtiny85 + Uno komunikácia

Příspěvekod kodl69 » stř pro 19, 2018 12:05 pm

Takže pro jistotu 1k odpor k +3V? Odpor by byl hned u procesoru, žádný dlouhý cesty. Zarušený prostředí - napájení procesoru je sice přímo na kontaktech baterky, ale na stejným místě je připojenej i ten měnič, kterej ve špičkách bere 15A, a to, že jsou všude okolo blokovací kondenzátory to moc nezmění. Jinak tlačítko reset na tom dělat nehodlám, možná by tam mohla být třeba jumper - ploška, co kdyby, ale to je spíš pro ladění...
ostrov 4600Wp neustále ve stádiu zrodu: 6x noark CHSM6610P250, 6x250Wp z I4wifi, 6xTratek 275Wp, 4x Auria 120Wp, midnite classic 150 lite+whizbang jr., 16S a různě P cca 300Ah Winston, Ex Powerjack 8kW (momentálně samodomo cca 6kW). 48V DC rozvody a spotřebiče.
kodl69
 
Příspěvky: 4714
Registrován: sob črc 19, 2014 7:56 pm

Re: ATtiny85 + Uno komunikácia

Příspěvekod Miyuki » stř pro 19, 2018 1:02 pm

kodl69 píše:přesunuto z tématu "průdový spínaný zdroj" sem to patří víc: Za nějaký z těch novejch... Nevím za jaký, a příp potom kdo to dokáže korektně naprogramovat. Třeba už jenom proto, že Webench.ti.com navrhne i součástky do kmitočtové kompenzace zpětné vazby, a všechno okolo, (jinak bych na takovej mosfet nepřišel) což by u měniče s procesorem asi byl problém. A dávat tam nějakej 32 bit na 72MHz mi nepřijde rozumný.
....

Na tohle je ideální nová řada ATtiny417 / ATtiny814 / ATtiny816 / ATtiny817
Jsou to vlastně XMegy ale zmenšený, s event systémem a dalšíma vychytávkama, včetně toho jednopinovýho programování :roll:
A přitom cena je opravdu směšně nízká
Jestli máš možnost nechat osazovat smd, tak je diskrétní budič mosfetu nejlepší řešení
Uživatelský avatar
Miyuki
 
Příspěvky: 53
Registrován: pon dub 23, 2018 10:36 am

Re: ATtiny85 + Uno komunikácia

Příspěvekod kodl69 » stř pro 19, 2018 1:47 pm

tohle je další problém, kterej jsem řešil: pokud budu potřebovat přeprogramovat attiny85, nechám balancer na článku, plastovou pinzeto ho vytáhnu z patice, přeprogramuju a pak dám procesor zpátky na svoje místo. Když to bude smd, tak musím:
1.) dát nějakej programovací konektor, z toho plyne nebezpečí zkratu náhodným okolo vlajícím drátem na piny konektoru, konektor zabírá místo, stojí peníze.
2.) Nějak řešit programátor s galvanickým oddělením. Osobní zkušenost s UART/USB převodníkem, kterej se náhlým pohybem vysunul z USB NB (napájenýho z aku) a volným pádem dopadl obal toho usb na nějakej kontakt baterky - sfajroval naštěstí jenom ten převodník a procesor v jednom balanceru.
Takže znovu opakuju, jsou možný jiný řešení, pokud chceš takovou věc vyvinout a udělat, nikdo ti nebrání, já mám tyhle zkušenosti. Například nikde jsem neviděl nějakej vzorovej příklad na tu PWM se zpětnou vazbou reagující "in pulse" tj při překročení proudu v průběhu pulzu ho "hned" ukončit a zároveň nějak rozumně regulovat výstupní napětí a proud. Ale přiznám se, že jsem to moc nehledal. Doma mám jeden attiny861, ale ani jsem to zatím nevybalil ze sáčku...
Tím "dokáže naprogramovat" jsem nemyslel fyzickou vrstvu, ale know how. Já tak sotva zvládnu arduino ide, a těžím z komunity, kde je mrak příkladů, který spojím a přiohnu do svýho řešení, nejsem programátor a ani nechci být. To je další důvod volby tohohle attiny, že se s ním domluvím.
ostrov 4600Wp neustále ve stádiu zrodu: 6x noark CHSM6610P250, 6x250Wp z I4wifi, 6xTratek 275Wp, 4x Auria 120Wp, midnite classic 150 lite+whizbang jr., 16S a různě P cca 300Ah Winston, Ex Powerjack 8kW (momentálně samodomo cca 6kW). 48V DC rozvody a spotřebiče.
kodl69
 
Příspěvky: 4714
Registrován: sob črc 19, 2014 7:56 pm

Re: ATtiny85 + Uno komunikácia

Příspěvekod Miyuki » stř pro 19, 2018 2:10 pm

No programovací konektor vs patice to je otázka co zabírá víc místa a stojí víc peněz
A potřebuješ programovací konektor když už jsou stejně všechny čipy propojený ?
Vždyť podporujou přepsání programu za běhu, tak je prostě přeprogramuješ přes jednotnou datovou linku kterou používáš normálně na kontrolu a čtení dat
Navíc to bude mnohem pohodlnější, než vytahovat desítky švábů z patic

Uznávám, že každej dělá s čim je zvyklej, ale když chceš investovat docela dost do vývoje něčeho takovýho, tak by se to podle mě mělo udělat jak nejlíp to jde a ne to jenom nějak dát dohromady
Uživatelský avatar
Miyuki
 
Příspěvky: 53
Registrován: pon dub 23, 2018 10:36 am

Re: ATtiny85 + Uno komunikácia

Příspěvekod rottenkiwi » stř pro 19, 2018 3:23 pm

A ako sa to dá paralelne, ked tam do tých Attiny pošlem kód, tak ono to 16 naraz prepíše,
ale ak bude jeden chybný spoj, tak ako to paralelne odkontrolujem ?
Uživatelský avatar
rottenkiwi
 
Příspěvky: 3651
Registrován: pát úno 13, 2015 2:24 pm
Bydliště: SO, SK

Re: ATtiny85 + Uno komunikácia

Příspěvekod Miyuki » stř pro 19, 2018 3:40 pm

No stejně jako za provozu když z nich chceš dostat nějaký data
Buď jsou všechny na sběrnici a mají nějakou adresu, nebo to bude vyřešený jinak, to záleží jak je navržená komunikace

Ale když bude chybný spoj, tak to už předtím bude v managementu vidět, že nějakej modul nekomunikuje
Uživatelský avatar
Miyuki
 
Příspěvky: 53
Registrován: pon dub 23, 2018 10:36 am

Re: ATtiny85 + Uno komunikácia

Příspěvekod kodl69 » stř pro 19, 2018 4:21 pm

topologie kruh, nebudou na sběrnici, a nebudou mít adresu, to je to kouzlo... Každej procesor načte co přišlo, pošle dál a přidá svůj datagram. Jestli tam někdo napíše nějaký CRC nebo tak něco, je jeho věc, ale nad moje možnosti. Prohlídni si schéma o pár příspěvků dřív.
OTA technologie u ESP8266 ve mně taky trochu vzbuzuje hrůzu ohedně bezpečnosti, natožpak tohle...
Když bude chyba komunikace, je každej balancer schpen funkce balancování, řídící modul může nějak signalizovat poruchu, a díky LED paralelně s optočlenem není problém zjistit, kde signál ještě je a kde už ne. Navíc bez adres je snadná zaměnitelnost hardware.
ostrov 4600Wp neustále ve stádiu zrodu: 6x noark CHSM6610P250, 6x250Wp z I4wifi, 6xTratek 275Wp, 4x Auria 120Wp, midnite classic 150 lite+whizbang jr., 16S a různě P cca 300Ah Winston, Ex Powerjack 8kW (momentálně samodomo cca 6kW). 48V DC rozvody a spotřebiče.
kodl69
 
Příspěvky: 4714
Registrován: sob črc 19, 2014 7:56 pm

Re: ATtiny85 + Uno komunikácia

Příspěvekod kodl69 » stř pro 19, 2018 4:34 pm

Navíc se dá předpokládat, že SW do modulů se poměrně rychle dostane do nějakýho konečnýho stavu, a pak už k nějakejm změnám nebude docházet. Ale pořád nemáme stanovenej komunikační protokol... Co bude obshovat je asi jasný, nějaká úvodní sekvence, kde se řekne, co bude následovat, jestli čtení dat, nebo zápis parametrů. A parametry bych ještě rozdělil na trvalý, uložený v eeprom, a dočasný, jenom v registru procesoru.
trvalý parametry by měly být: koeficient pro měření napětí, napětí pro spuštění balancování. Zápis bych asi nějak "posichroval" třeba že musí přijít aspoň třikrát to stejný, než se přepíše eeprom.
dočasný parametry: napětí pro spuštění balancování. Ještě něco?
data, co se budou odesílat: napětí článku, proud balanceru, teplota procesoru? nějaký stavový slovo?
ostrov 4600Wp neustále ve stádiu zrodu: 6x noark CHSM6610P250, 6x250Wp z I4wifi, 6xTratek 275Wp, 4x Auria 120Wp, midnite classic 150 lite+whizbang jr., 16S a různě P cca 300Ah Winston, Ex Powerjack 8kW (momentálně samodomo cca 6kW). 48V DC rozvody a spotřebiče.
kodl69
 
Příspěvky: 4714
Registrován: sob črc 19, 2014 7:56 pm

Re: ATtiny85 + Uno komunikácia

Příspěvekod Miyuki » stř pro 19, 2018 5:05 pm

Pak se klidně můžou odesílat i data novýho programu do kruhu a chyba se snadno zjistí
Uživatelský avatar
Miyuki
 
Příspěvky: 53
Registrován: pon dub 23, 2018 10:36 am

Re: ATtiny85 + Uno komunikácia

Příspěvekod kodl69 » stř led 16, 2019 11:03 pm

Dnes konečně po delší době se mi podařilo něco udělat - dlouho se mi nedařilo naprogaremovat žádný attiny - 10 hodin života jsem ztratil s tímhle krámem:USBASP programátor
chyby, pracné přehrání firmware pomocí jinýho programátoru, chvilku to fungovalo a zase chyba, chyba... Ostatně čím kdo programujete AVR procesory?
Tak jsem vytáhl "arduino as ISP" a bez problému to funguje. Co mě trochu dostalo, tak že je potřeba "vypálit zavaděč" se správně nastaveným kmitočtem procesoru, jinak je v háji veškerý časování. Odzkoušel jsem si měření napájecího napětí přes nap. referenci s LM385, dá se doměřit cca +- 5mV, což odpovídá teoretickým předpokladům, vyzkoušel jsem spínání "pálících" odporů mosfetem AON7544, 2A balančního proudu jako nic, mosfet studenej, spínání přímo z attiny - větší výkon bych se v blízkosti baterky neodvážil uvolnit, 2ks 5W odporů topilo dost. Samozřejmě chyby na desce jsou přítomny, musel jsem na desce předrátovat vývody pro LM385 na pin7 (ADC1) a pin 5 bude na RX, bude potřeba na INT0 pro probouzení procesoru komunikací z režimu spánku...
Ještě některej den odzkouším jak prochází signál přes optočleny, jestli to nebude komolit zprávy a můžu předat prvních pár kusů tvůrcům sw, tak se hlavně nehlaste všichni :lol: Deska pasuje na 60Ah winston bez drátů, na větší články se jeden pól doplní kouskem tvrdýho drátu a za druhej drží:
balancerodpor_brd.png
balancerodpor_brd_b.png

Co mě trochu dostalo, že v mé knihovně k eagle obsažený LM385 mají ve všech variantách pouzdra přehozený vývody optoi skutečnosti...
Nemáte oprávnění prohlížet přiložené soubory.
ostrov 4600Wp neustále ve stádiu zrodu: 6x noark CHSM6610P250, 6x250Wp z I4wifi, 6xTratek 275Wp, 4x Auria 120Wp, midnite classic 150 lite+whizbang jr., 16S a různě P cca 300Ah Winston, Ex Powerjack 8kW (momentálně samodomo cca 6kW). 48V DC rozvody a spotřebiče.
kodl69
 
Příspěvky: 4714
Registrován: sob črc 19, 2014 7:56 pm

Re: ATtiny85 + Uno komunikácia

Příspěvekod DanoP » sob led 19, 2019 4:42 pm

Dnes som skúšal zvýšiť balancovací prúd na 2A, teplota odporu sa mi však nepáči.
img_thermal_1547909075976.jpg

Na prekvapenie spínací tranzistor AO3420 v SOT23 sa nehrial, úbytok na ňom bol len 50mV. Čo mi však nedá, je teplota odporu ktorá išla až k 200 stupňom. Rozmýšlam čo s tým. Chcelo by to menič....
Nemáte oprávnění prohlížet přiložené soubory.
1770Wp monokryštál + PIP4048MS + 10kWh LiFePO4, vlastny monitoring na https://www.mms-softec.sk/pip/
DanoP
 
Příspěvky: 530
Registrován: stř črc 06, 2016 11:27 am
Bydliště: Trnava, Slovensko

Re: ATtiny85 + Uno komunikácia

Příspěvekod kodl69 » ned led 20, 2019 8:51 pm

Na měniči chvilkama pracuju, teď jsme to nechal odležet. Já tam mám dva 5W 3R3 a 200 stupňů při 3.5V teda jistě nemají. Neměřil jsem, zítra to ověřím, ale dokázal jsem se toho bezbolestně dotknout, tak odhaduju do 80°C. Zase je fakt, že jsem to netýral hodinu, jenom pár minut. Podle datasheetu by se to mělo vejít do 120°C, což by neměl být problém, pokud nebude přímo na odporu ležet drát s PVC izolací. Na 4.2 v by to chtělo spíš 3.9 nebo 4.3 Ohm, aby to na ně nebylo moc.
Spíš mě příjemně překvapil ten AON7544, což by měl být spíš 5V mosfet, už při 2.5V dokáže tenhle proud spínat bez nějakýho velkýho vytápění. SOT23 bych asi neměl odvahu použít, už tohle je na člověka ze staré školy hodně. Pokud by bylo to teplo kam poslat tak 5-6A by neměl být problém. Zítra chci zkusit komunikaci, a pokud to klapne, připravím nějaký kousky betatesterům + kousky kódu, se kterejma jsem to testoval.
ostrov 4600Wp neustále ve stádiu zrodu: 6x noark CHSM6610P250, 6x250Wp z I4wifi, 6xTratek 275Wp, 4x Auria 120Wp, midnite classic 150 lite+whizbang jr., 16S a různě P cca 300Ah Winston, Ex Powerjack 8kW (momentálně samodomo cca 6kW). 48V DC rozvody a spotřebiče.
kodl69
 
Příspěvky: 4714
Registrován: sob črc 19, 2014 7:56 pm

Re: ATtiny85 + Uno komunikácia

Příspěvekod kodl69 » pon led 21, 2019 9:14 pm

Dnes jsem vyzkoušel komunikaci přes optočleny arduino-attiny, na 9600Bd bez zaváhání RX i TX, nestihl jsem si spojit aspoň dva moduly a posílat to mezi nimi, to snad dám zítra. Vypadá to, že HW je připravenej pro programátora, já to nebudu...
- hodnou chvilku jsem nechápal, proč mi attiny vrací místo "1" "CR" kód "49" "10", místo dvojky "50" "10", atd... nenápadný rozdíl mezi "write" a "print"...
Co by asi bylo dobrý, tak využít altSoftSerial akorát v souboru config není attiny85 a netuším jak ho tam dopsat, příp. jaký piny by to potom používalo.
ostrov 4600Wp neustále ve stádiu zrodu: 6x noark CHSM6610P250, 6x250Wp z I4wifi, 6xTratek 275Wp, 4x Auria 120Wp, midnite classic 150 lite+whizbang jr., 16S a různě P cca 300Ah Winston, Ex Powerjack 8kW (momentálně samodomo cca 6kW). 48V DC rozvody a spotřebiče.
kodl69
 
Příspěvky: 4714
Registrován: sob črc 19, 2014 7:56 pm

Re: ATtiny85 + Uno komunikácia

Příspěvekod kodl69 » úte led 22, 2019 10:27 pm

Dnes jsem asi teoreticky vyřešil jak na komunikaci a probouzení attiny ze sleep mode:
1.) před data se pošle 1ms LOW na TX pin. Tím se probudí attiny, bude na to mít dost času a spustí rutina pro načtení dat přes přerušení.
2.) datagram každýho balanceru bude začínat "uvozujícím znakem" třeba 0xAA a končit nějakým "divnoznakem" třeba @ (0x40).
3.)při načítání dat do stringu se @ nenačte, přidá se do stringu "uvozující znak" a data balanceru, na konec zase @. Takhle by to mělo projít všemi balancery až na konec. Pro řídící modul bude počet "uvozujících znaků", délka zprávy a @ na konci snad dost na to, že jsou data komplet. Do attiny se v pohodě vejde 200znaků string a ještě něco zbyde na proměnný, takže se 4Byte na modul je to max 50 modulů v sérii. A nebo musí být použitá úplně jiná filozofie programovaníní.
4.) když bude odeslán datagram s jiným uvozujícím znakem, třeba 0xF0 a za ním nový balanční napětí v milivoltech a na konec zase @ , tak balancer pozná, že jsou to nastavovací data, uloží si nový balanční napětí a bez změny to pošle dál. Řídící modul by měl přijmout zpátky tuhle zprávu a vyhodnotit, že to proběhlo správně.
5.) aby se nemusela ladit konstanta pro referenční napětí pro každej kus zvlášť, měla by být v eeprom a nastavit se nějak jednoduše ale spolehlivě, třeba takhle. připojí se jeden balancer na přesný napětí a pošle se mu třeba 0xB2 napětí zdroje v mV @ a to třikrát po sobě, čímž se přepíše konstanta pro napěťovou referenci v eeprom. zapsání třeba může signalizovat blikání LED od balancování. Podobně by se mohlo do eeprom ukládat default balanční napětí pro různý typy aku, aby to fungovalo aspoň jako balancer i bez řídícího modulu.

Samozřejmě další feature jako CRC na komunikaci, vypínání balancování při měření kvůli rušení, digitální filtry naměřenejch hodnot atd jsou na libovůli programátora.
Tak kdo to teda naprogramujete?
ostrov 4600Wp neustále ve stádiu zrodu: 6x noark CHSM6610P250, 6x250Wp z I4wifi, 6xTratek 275Wp, 4x Auria 120Wp, midnite classic 150 lite+whizbang jr., 16S a různě P cca 300Ah Winston, Ex Powerjack 8kW (momentálně samodomo cca 6kW). 48V DC rozvody a spotřebiče.
kodl69
 
Příspěvky: 4714
Registrován: sob črc 19, 2014 7:56 pm

Re: ATtiny85 + Uno komunikácia

Příspěvekod rottenkiwi » stř led 23, 2019 8:51 am

Ked sa nikto nenajde, ja by som to skúsil. Len na čom to budem testovať ? Na Lion ?
Uživatelský avatar
rottenkiwi
 
Příspěvky: 3651
Registrován: pát úno 13, 2015 2:24 pm
Bydliště: SO, SK

Re: ATtiny85 + Uno komunikácia

Příspěvekod camel1cz » stř led 23, 2019 10:59 am

Chtělo by to vyrobit dokumentaci funkčnosti a komunikačního protokolu. Ideálně tady v diskusi a sepsat to do jednoho dokumentu.
Pak se dá něco implementovat.
camel1cz
 
Příspěvky: 568
Registrován: pon bře 21, 2011 11:12 pm

Re: ATtiny85 + Uno komunikácia

Příspěvekod rottenkiwi » stř led 23, 2019 1:02 pm

Máte niekto odskúšané knižnice na Reed Solomom codes pre Arduino ?

https://github.com/simonyipeter/Arduino-FEC
Uživatelský avatar
rottenkiwi
 
Příspěvky: 3651
Registrován: pát úno 13, 2015 2:24 pm
Bydliště: SO, SK

Re: ATtiny85 + Uno komunikácia

Příspěvekod camel1cz » stř led 23, 2019 3:16 pm

To je šílený overkill, jsme na pidiprocesoru. Naprosto stačí 1 (dát každého článku) nebo 2 bajty (celé zprávy) jako prostý součet bajtů datagramu bez ošetření přetečení.
camel1cz
 
Příspěvky: 568
Registrován: pon bře 21, 2011 11:12 pm

PředchozíDalší

Zpět na Arduino

Kdo je online

Uživatelé procházející toto fórum: CC [Bot] a 0 návštevníků

Reputation System ©'