MEGA Virtuino a Ubidots

Odpovědět
ripaxxx
Příspěvky: 12
Registrován: 19 říj 2020, 16:23
Reputation: 0

MEGA Virtuino a Ubidots

Příspěvek od ripaxxx » 03 pro 2020, 10:35

Ahoj všem, prosím prvotně o radu, zda je to proveditelné a případně bych trochu zpřehlednil Scatch a vložil pro pomoc. Dělám projekt do domácnosti a zůstal jsem viset. Příklad použití: Tlačítkem rozsvítím světlo, mobilem (virtuino) zhasnu a zároveň můžu měnit i prahovou hodnotu z DHT pro ventilátor. Ale zároveň si z DHT posílat na cloud a případně sepnout kotel...
Mám to stavěné aby to jelo samostatně přes tlačítka a "doplňkově" spínání a změnu proměnných přes Virtuino (pohodlnost), které jede pouze ve vnitřní síti (nemám a nechci veřejnou IP). Nyní jsem chtěl rozšířit o monitoring DHT a případné sepnutí i mimo domov přes cloud Ubidots a nastal problém. Nejspíše se mi komunikace hádají a nefunguje ani jedno. Samostatně ano. Je vůbec možné aby mi jeden program jel jako server a druhý zároveň client? Jsem v koncích... :roll:
HW: Deska MEGA s ethernet shieldem 9100.
Děkuji a budu vděčný za jakýkoliv nápad.

Uživatelský avatar
gilhad
Příspěvky: 779
Registrován: 07 bře 2018, 11:22
Reputation: 0

Re: MEGA Virtuino a Ubidots

Příspěvek od gilhad » 03 pro 2020, 14:58

Obecne je mozne, aby jeden program fungoval zaroven jako server i klient a sam jsem par takovych napsal.

Na druhou stranu splacat "jen tak nejak" dohromady par knihoven (jak je v Arduino svete bohuzel rozsireny zvyk) spis fungovat nebude, nez bude, protoze se mezi sebou nejspis budou prat o zdroje, navzajem se prerusovat ci blokovat a delat radu jinych necekanych interakci (rada knihoven tak nejak mlcky predpoklada, ze ma pro sebe cele Aduino a veci okolo se jim tak nejak vyhnou a budou si hrat jen tam, kde to te knihovne nevadi - pokud ty veco okolo jsou nejake blikani ledkama a tlacitka, tak to prochazi a casto prochazi i rada dalsich veci, at uz protoze si nahodou narokujou jen zdroje, ktere danou knihovnu nezajimaji, nebo protoze se "nahodou vetsinou" nestrefi naraz do oblasti problematickych - pak to "pada jen obcas nahodne"). Obdobne na tom jsou shieldy a jejich pristup k pinum.

ripaxxx
Příspěvky: 12
Registrován: 19 říj 2020, 16:23
Reputation: 0

Re: MEGA Virtuino a Ubidots

Příspěvek od ripaxxx » 04 pro 2020, 16:29

Děkuji, já mám bohužel problém už se zahájením komunikací :( Na cloud se neodešle nic a telefon se mi nespojí s "arduinoserverem". Kdyby tu byl někdo kdo by se mi podíval ná kód byl bych vděčný. Stačí mi pouze zda mám správně nastavení komunikací. To když se mi rozběhne tak se s programem poperu....
Edit:
Tuto akci beru zpět. Už tak mám ten kód složitý a knihovny se pořád asi hádají...I jen přidělování IP dělá problémy. Jedna má snahu DHCP a druhou dávám fixně. Takže dle DHCP jsem druhou přiřazoval stejně ručně. Nejspíše to vyřeším MEGA na řízení domu a nějaké nano s wifi pro monitoring. Pak buď spojit linkou a nebo vyloženě povely drátem na piny MEGA. Jen jeden dotaz. Lze připojit jedno čidlo (např.DHT22) na dvě zařízení zároveň aby to fungovalo spolehlivě?
Naposledy upravil(a) ripaxxx dne 04 pro 2020, 16:53, celkem upraveno 1 x.

Uživatelský avatar
pavel1tu
Příspěvky: 2054
Registrován: 26 říj 2017, 08:28
Reputation: 0
Bydliště: Trutnov
Kontaktovat uživatele:

Re: MEGA Virtuino a Ubidots

Příspěvek od pavel1tu » 04 pro 2020, 16:49

Já nepochopil co ti chodí a co ne ...
- rozchoď si to po částech, klidně zvlášť vyčítání čidel, zvlášť server, zvlášť klienta
- pak k základní části (vyčítání/ovládání) začni postupně přidávat ostatní věci co se týče komunikace

PS: pokud bez postupného ladění prostě "poslepuješ" kody z různých projektů/příkladů - nerozchodíš to. Vše si komentuj, piš kod přehledně, odesílání kudy program běží na Serial
UNO, NANO, Mikro, PRO mini, DUE, ESP32S2, RPi PICO
Pavel1TU
"Správně napsaný kod lze číst jako knihu"

ripaxxx
Příspěvky: 12
Registrován: 19 říj 2020, 16:23
Reputation: 0

Re: MEGA Virtuino a Ubidots

Příspěvek od ripaxxx » 05 pro 2020, 18:02

Právě takto jsem to řešil...Slepoval...Problém mám už od začátku ten, že program (Virtuino - server) řízení domu funguje , než se do něj pokusím dopsat monitoring (Ubidots - client). Poté mi už ani jeden nenaváže komunikaci. Tím myslím se servery....Ale asi doopravdy půjdu cestou druhé desky se svou wifi. Odpadne toto a v případě změny cloudu nebudu muset extra sahat do hlavního programu....Budu si posílat pouze proměnné nebo povel na pin. Děkuji za ochotu pomoci, ale po zvážení to byla fakt blbost. V knihovnách se používají i stejné výrazy pro oba programy a asi by to nedělalo dobrotu i kdybych rozchodil komunikaci. Jen tedy prosím o tu poslední radu. Můžu si zapojit digitální čidlo např. DHT22 na dvě zařízení paralelně tak aby to fungovalo? Děkuji všem

ondraN
Příspěvky: 932
Registrován: 08 srp 2019, 20:01
Reputation: 0

Re: MEGA Virtuino a Ubidots

Příspěvek od ondraN » 07 pro 2020, 15:12

DHT22 paralelně ke dvěma zařízením nepřipojíš (teda šlo by to, ale s dodatečným HW a nutností úpravy knihoven). Nejjednodušší cesta je použít čidla dvě těsně u sebe, aby měřily zhruba to samé.

Uživatelský avatar
gilhad
Příspěvky: 779
Registrován: 07 bře 2018, 11:22
Reputation: 0

Re: MEGA Virtuino a Ubidots

Příspěvek od gilhad » 08 pro 2020, 05:04

IMHO by v pohode pripojit slo, pokud by obe zarizeni mela spolecnou zem, tolerovala stejne napeti a mela ty spravne knihovny - v podstate staci na zacatku sledovat tu linku,
- jestli behem 120uS klesne na nulu na asi 50uS, tak si to zrovna povida s kolegou a tak proste pockej, nez domluvi.
- jestli je dole na 100+uS, tak kolega zahajuje komunikaci a tak proste poslouchej a dozvis se hodnotu posilanou kolegovi
- jinak zahaj komunikaci sam

(jo a jeste tam je cosi o 2s, kdy to meri, takze asi je spravne zahajit komunikaci a pak jeste jednou za 2s a akceptovat az ta druha data - pokud jsi na lince pristihnul kolegu, tak jen pockat ty 2s a pak si o ta data zadat - uz by mela byt namerena - s tim, ze se zase koukas, jestli do toho nekeca kolega - pak je asi dobre ty 2s pockat, zda se o ta data neprihlasi on a kdyz ne, tak se prihlasit sam, pokud ho predbehnes, tak to zase pozna on a jen bude cist taky)

Pokud tohle budou delat vsechny knihovny, tak tam muze byt odberatelu kolik chce

ripaxxx
Příspěvky: 12
Registrován: 19 říj 2020, 16:23
Reputation: 0

Re: MEGA Virtuino a Ubidots

Příspěvek od ripaxxx » 09 pro 2020, 06:02

Děkuji za cenné rady. Po nekonečném hledání i na zahraničních fórech jsem, kde se řešilo neco podobného jsem šel tedy jinou cestou. Dle "odborníků" tam je komunikace pro dvě aplikace jako server/client zároveň obtížná a problematická. Nakonec to vyladily, ale jen kód pro komunikaci byl šíleně složitý a obsáhlý. Možná by to fungovalo na nějaké jednoduché programy stylu jednou za čas něco pošli, ale já potřebuji jedno spojení bez prodlev. :(
Zatím testována osekaná varianta mého programu na MEGA a Ethernet Shield pro monitoring na CLOUD a Bluetooth modul připojen na Serial1 piny pro řízení. Komunikace byla funkční a bez výpadků. Nicméně předělávám program na hotovo a bluetooth kvůli dosahu zkusím zaměnit za ESP8266. Snad to půjde a nebude se mi něco hádat na TCP. Tato cesta se mi zatím jeví jako nejlepší. Vůbec mě nenapadlo, že můžu využít více sériových linek a zapojit modul "za stovku" :roll: Čidla si vyčtu do proměnné a teprve tu budu číst v obou programech. Tím odpadá problém s časy...

ps:Asi nejvíce mi pomohla rada o "slepování" příkladů. Šel jsem více do hloubky a snažil se číst a upravovat i knihovny a začalo to fungovat. Už jen třeba to, že zahájení komunikace stejného programu od jednoho autora knihoven je např. pro Bluetooth virtuino.run() a pro ethernet virtuinoRun(). :shock: To bych ještě překousl. Ale to, že samotná knihovna je napsaná úplně jinak a musí se předělávat v mém programu styl vyčítání a posílání pinů je smutné :x

Odpovědět

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 8 hostů