Development direct pe raspberry


(Razvan) #1

Salutare,

Ma bate gandul sa imi fac un sistem de irigare al unor ghivece. Am la dispozitie un Raspberry PI,o mini pompa de apa, releu ptr motorul pompei, conectori, etc … Hardware sunt ok.
Acum vinea partea de software …
Vreau ca interfata prin care controlez pompa sa fie una web, sa pot sa accesez din browser(de pe telefon) un portal unde am doua butoane, start si stop, care sa porneasca si sa opreasca pompa.
Pentru interfata vad doua abordari : fie fac eu o aplicatie web, fie caut ceva framework gata facut care sa imi permita sa leg pinii GPIO la diverse butoane. Ar fi ideal sa existe un framework care atunci cand e instalat pe raspbery sa imi puna la dispozitie o interfata grafica unde sa programez efectiv actiunile butonului, si sa pot face si debug daca e nevoie. Adica dezvoltarea sa se faca direct pe raspberry.

Aveti idee de vreun framework care sa corespunda cerintelor mele ?


(cosmos) #2

https://www.wyliodrin.com/

Este un tool de programare grafica. Seamana cu Scratch

Aici un ebook pt Raspberry (cartea nu este piratata, este de la ei de pe site)

Alternativ, poti pune Rasbian pe Pie si poti folosi python pt partea de control a motorului si php, html, css si ceva js pt client

Sper sa te ajute. Cu Wyliordrin nu am lucrat dar am auzit ca poti face lucruri faine cu el intr-o maniera grafica


(Cristian Nebunu) #3

Poti merge pe varianta oferita de @Cosmin_Popescu sau, daca ai ceva experienta cu Javascript poti sa faci o aplicatie simpla destul de repede cu un setup Express de baza, libraria rpi-gpio si ceva HTML/CSS


(Adrian Stanculescu) #4

Nu.
Web server folosesti flask ( poti folosi combinat cu angular). Si pt gpio tot cu python.


(George Calianu) #5

Alternativ poti face aplicatia asta si in limbajul Go folosind:


(Adrian Stanculescu) #6

Pentru performanta nu tine ideul pe raspberry.
Ii pui ssh si ii instalezi raspbian lite.
Guiul ii manca o gramada de resurse.


(Viorel) #7

cred ca utilizarea un Pi pentru asa ceva este putin overkill. daca nu doresti sa faci risipa de biti si electroni poti folosi un esp8266 sau esp32.
eu folosesc pentru mobil blynk care este foarte intuitiv si te scapa de bataia de cap cu web-ul. folosesc combinatie blynk + esp8266 pentru diverse (masurare tem, umiditate, control la distanta pentru centrala termica, clonat toate telecomenzile 433mhz din casa(si actionate de pe mobil)).

pentru controlul pompei ai nevoie de un releu si aici intervine avantajul major in folosirea esp pentru ca poti gasi gata facut modul cu esp + releu.


(Serghei Amelian) #8

Dacă nu o faci din distracţie, poţi să foloseşti direct ceva de genul LAN Controller.


(Opencart Romania) #9

Subscriu la cele scrise mai sus, legat de esp8266. Poti folosi websockets sau o simpla pagina html rand-data direct pe esp (sever mode).

Ai wifi integrat, si poate fi conectat in propriul LAN.

Succes!


(Razvan) #10

Foarte interesanta ideea cu esp8266. Vad ca sunt mai multe modele de esp8266. Nu stiu pe care sa il aleg.
Cunostintele mele de electronica sunt minime, asa ca depind de tutoriale.

Am gasit un modul cu tot cu releu, dar care pare destul de basic, si ii lipseste interfata cu portul USB.

Apoi am gasit o versiune mai avansata, cu multi pini GPIO, si exista destula documentatie pe internet.


Eu inclin sa imi comand modulul mai avansat + releul L298N pentru controlul pompei.

Multumesc pentru ideea cu ESP8266.

LE : Am adaugat link corect ptr releu.


(Opencart Romania) #11

Salutare!

Nu este deloc mai avansat … este acelasi lucru numai ca are si partea de comanda releu pe el …

Poti sa-l reprogramezi foarte usor si alimentat cu o sursa de 5V …acel esp-01/

Gasti exemple destul de multe cum sa-l pui la lucru.

Spor


(George Calianu) #12

In acest caz incearca controllerul propus de @serghei mai sus. L-am folosit si eu, recomand.


(cosmos) #13

@razvanp, eu am facut ceva asemanator, dar cu un arduino. Interfata am facut-o in windows froms. Am comunicat folosind seriala cu Arduino


(Viorel) #14

daca esti la inceput de drum iti recomand ceva gen wemos D1 mini. pentru IDE poti sa folosesti arduino IDE. iti recomand blynk deaoarece gasesti foarte multe sketch-uri predefinite plus un mare avantaj pentru incepatori gasesti tone de informatie bine structurata. la fel de bine poti sa folosesti orice altceva (MQTT sau webrequest).


(István F.) #15

wemos mini + https://platformio.org


(Andrei Avram) #16

@isti37, n-ai avut probleme cu combinatia asta?


(István F.) #17

Am avut ceva probleme cu Atom dar acum au trecut pe VSCode. Iti trebuie un cont, dar nu ma mai deranjeaza.


(Andrei Avram) #18

Daca tot ai lucrat cu asta, poate trantesti codul intr-un repo. L-ar ajuta mult pe autor sa vada ceva implementat.


(Razvan) #19

Revin cu update despre proiectul meu.

Am cumparat ESP8266 NodeMCU impreuna cu L298N si o mini pompa submersibila.
Le-am conectat intre ele iar modulul WIFI l-am conectat la platforma Blynk. Procesul e destul de simplu si e plin de documentatie si tutoriale.

Setup-ul e cam “overkill” ptr scopul final al proiectului, si cred ca pot sa inlocuiesc modulul NodeMCU cu un ESP8266 simplu(esp-01), iar modulul L298N cu un circuit cu un tranzistor care sa inchida circuitul de alimentare al motorului atunci cand este actionat.


(István F.) #20

L298 e practic fiindca iti merge cu cei 3.3V ai lui ESP8266, pentru un releu sau tranzistor iti trebuie un optocuplor, dar iesi mai ieftin.

Nu recomand ESP01, a fost facut ca si modul wifi pentru arduino, eventual poti lua direct modulul cu antena mult mai ieftin si sa il lipesti pe un placaj. Problema e ca niciunul nu il poti programa fara un adaptor serial si pentru diferenta de pret intre nodemcu/wemos si esp01/modul mai bine iei direct wemos/nodemcu si le poti conecta direct la usb.