Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
Un designer artist: Raymond Loewy

ATS din contactor modular

Parere apartament ~150k

Limitare la 100mb/s
 Altercație

Cartonașe și stickere t...

Ciobanesc german - zgarda electro...

Ce este instalatia asta? (Valea B...
 BD-R Verbatim 25gb salvare Fisier

Lupte WW2

Achizitie SUV, buget 17k euro

Gps traker pentru animale
 Aplicatii terte pentru IPTV, OTT,...

Drept trecere cu “carulR...

Sunt noile generatii care se nasc...

Butuc pedalier
 

Automatizari si dispozitive electronice in agricultura

* * * * * 1 votes
  • Please log in to reply
1427 replies to this topic

#577
aghet

aghet

    Junior Member

  • Grup: Members
  • Posts: 135
  • Înscris: 03.09.2007
Ok Marian.Multumesc

#578
mariusares

mariusares

    Member

  • Grup: Members
  • Posts: 887
  • Înscris: 09.06.2013
Buna ziua
am facut update la meniu
https://www.dropbox....V_0174.mp4?dl=0

pentru cunoscatori:
Sketch uses 38,716 bytes (15%) of program storage space. Maximum is 253,952 bytes.
Global variables use 4,226 bytes (51%) of dynamic memory, leaving 3,966 bytes for local variables. Maximum is 8,192 bytes.
trebuie sa fug la munca
revin cu detalii mai tarziu
o zi faina tuturor

#579
corsica

corsica

    Senior Member

  • Grup: Senior Members
  • Posts: 5,947
  • Înscris: 13.04.2007
Da Marius, e OK!

#580
mariusares

mariusares

    Member

  • Grup: Members
  • Posts: 887
  • Înscris: 09.06.2013
Ok. Sa explic ce e acolo:
Modulul confort impartit in 2 mini module:
Aerisire capete cu: temperatura deschidere, temperatura inchidere, viteza vant si umiditate(care nu e implementata inca) va inchide/deschide capetele solarului in functie de valorile setate. Mai exact ceea ce face arduino acum pe laterale.
Aerisire laterale: temperatura maxima, temperatura minima, viteza vant lucru, viteza vant inchidere urgenta si umiditate (care la fel nu este implementata). Va inchide, deschide lateralele individual, mai exact va tine laterala de unde bate vantul inchisa daca vantul are viteza mai mare decat viteza vant lucru setata. Daca viteza vantului depaseste valoarea setata pentru viteza vant urgenta amandoua lateralele se inchid.
Daca viteza vantului e mai mica decat viteza vant lucru setata si temperatura din solar mai mare decat temperatura de inchidere amandoua laterale sunt deschise
Toate valorile din meniu sunt salvate in epprom, mai exact meniul colecteaza si salveaza valorile 100%
Restul programului cu irigare, ceas, rasadnita a ramas la fel, cu module individuale care pot fi activate/dezactivate oricand
Sper sa faca 50$...



#581
mariusares

mariusares

    Member

  • Grup: Members
  • Posts: 887
  • Înscris: 09.06.2013
buna ziua,
am inteles ca sunt useri care au nevoie de un termometru profesional pentru rasadnita cu temperatura de zi si temperatura de noapte
mai jos o sa postez codul si libraria care functioneaza cu LCD I2C 20x4 dar si 16x2
lista de componente:
- orice placa arduino (uno mega etc);
- 2 senzori Dallas DS18B20
unul pentru sol unul pentru aer. functioneaza si doar cu un senzor de sol insa in momentul in care temperatura din sol va fi de 20 grade in aer veti avea mai mult, dupa cum bine stim caldura se ridica sus. Facem incalzirea fata de temperatura din sol, iar ventilarea fata de temperatura din aer.
http://www.ebay.ie/i...=item19f6d40063
http://www.ebay.ie/i...=item418a0dd852
este vorba de acelasi tip de senzor, unul este modul iar celalalt este senzor water proof. Pot fi folositi 2 senzori water proof. La fiecare senzor veti avea nevoie de un rezistor de 4.7K
-1 fotocelula
http://www.ebay.ie/i...=item3396c4971b
programul este calibrat pentu o astfel de fotocelula. o puteti folosi orice tip de fotorezistor cu o rezistenta de 10K
- un modul LCD i2C (asta daca vreti sa vedeti ceva Posted Image)
-un modul cu relee (2,4,6,8 relee. momentan este nevoie de 2 relee);

downloadati si instalati programul arduino (www.arduino.cc), librariile atasate mai jos
scrieti codul respectiv in programul arduino, compilati si faceti upload, apoi veti avea un termometru pentru rasadnita profesional
#include <Wire.h>
#include <OneWire.h>
#include <DallasTemperature.h>
#include <LiquidCrystal_I2C.h>
#define SENZOR_AER 2 //D2 aer sol rasadnita
#define SENZOR_SOL 3 //D3 senzor aer rasadnita
#define PIN_INCALZIRE 4 //D4 pin comanda incalzire rasadnita
#define PIN_VENTR 5 //D5 pin comanda ventilare rasadnita
#define photoRPin A0 //pin fotocelula rasadnita
int minTemp = 12; //temperatura minima (de noapte)
int maxTemp = 24; //temperatura maxima (de zi cu soare)
int tempVent = 25; //temperatura ventilare
int minLight = 90; //calibrare fotocelula
int maxLight = 8; //calibrare fotocelula
OneWire senzoraer(SENZOR_AER);
OneWire senzorsol(SENZOR_SOL);
DallasTemperature aer(&senzoraer);
DallasTemperature sol(&senzorsol);

//harta calcul temperatura de lucru rasadnita in functie de luminozitate
int lightLevel = analogRead(photoRPin);
int templucru = map(lightLevel, minLight, maxLight, minTemp, maxTemp);

LiquidCrystal_I2C lcd(0x27, 20, 4); //setup LCD I2C 20x4
//LiquidCrystal_I2C lcd(0x27,16,2); //setup LCD I2C 16x2
void setup() {
Serial.begin(9600);
aer.begin();
sol.begin();
pinMode(PIN_INCALZIRE, OUTPUT);
pinMode(PIN_VENTR, OUTPUT);
digitalWrite(PIN_INCALZIRE, HIGH);
digitalWrite(PIN_VENTR, HIGH);
lcd.init();
lcd.backlight();
lcd.setCursor(6, 1);
lcd.print("RobotulTau");
lcd.setCursor(5, 2);
lcd.print("Robotul Tau");
lcd.clear();
}
void loop() {
aer.requestTemperatures();
sol.requestTemperatures();
rasadnita();
}
void rasadnita(){
int tempSol = sol.getTempCByIndex(0);
int tempAer = aer.getTempCByIndex(0);
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Aer:");
lcd.print(tempAer);
lcd.print(" Sol:");
lcd.print(tempSol);
lcd.setCursor(0,2);
lcd.print("Temp Lucru: ");
lcd.print(templucru);
lcd.setCursor(0,3);
lcd.print("TMin: ");
lcd.print(minTemp);
lcd.print(" TMax: ");
lcd.print(maxTemp);
lcd.setCursor(0,1);
lcd.print("Temp Aerisire: ");
lcd.print(tempVent);
if(lightLevel > minLight){
templucru=minTemp;
}
if(lightLevel < maxLight){
templucru=maxTemp;
}
//incalzire sol
if (templucru > tempSol){
digitalWrite(PIN_INCALZIRE, LOW);
}
if (templucru < tempSol){
digitalWrite(PIN_INCALZIRE, HIGH);
}
//ventilare
if (tempAer >= tempVent){
digitalWrite(PIN_VENTR, LOW);
}
if (tempAer < tempVent){
digitalWrite(PIN_VENTR, HIGH);
}
}



nu am conectat senzorii sa il vad functional, insa nu pare sa fie vre-o problema. daca intampinati probleme, ii fac o revizie

Attached Files


Edited by mariusares, 08 February 2015 - 12:28.


#582
qwertysecret

qwertysecret

    Member

  • Grup: Members
  • Posts: 813
  • Înscris: 16.11.2006
wow! Mare boier, mare caracter, mii de multumiri, Marius!

#583
rid

rid

    Senior Member

  • Grup: Senior Members
  • Posts: 3,785
  • Înscris: 23.02.2006
Na, sa mai zica lumea ca se ascunde dupa librarie :))

#584
mariusares

mariusares

    Member

  • Grup: Members
  • Posts: 887
  • Înscris: 09.06.2013
e ceva basic si eficient.
Prima tentativa de termometru am codato cu laum acum 1 an. Am incercat sa explic destul de clar ce face codul respectiv, daca e cineva care nu intelege, poate intreba aici.

#585
laum

laum

    Member

  • Grup: Members
  • Posts: 839
  • Înscris: 22.09.2005
Am cautat ieri de am ametit Wire library :)
Multumesc!

#586
qwertysecret

qwertysecret

    Member

  • Grup: Members
  • Posts: 813
  • Înscris: 16.11.2006
so far, so good, ramane sa fac rost de fotorezistor si acele rezistente, pentru a "compila" si partea de hardware Posted Image

LE pt iubitorii de tenis, un disperat "Hai Romania!"

Attached Files


Edited by qwertysecret, 08 February 2015 - 13:41.


#587
mariusares

mariusares

    Member

  • Grup: Members
  • Posts: 887
  • Înscris: 09.06.2013
asa bravo
tu ai si cabluri cu pini .... senzor digital de lumina etc da?
pot accesa computerul tau sa adaptez programul la senzorul tau?
daca da da un buzz pe skype

eu nu am acel senzor momentan
sincer sa fiu rasadnita nu ma intereseaza pe mine
PS: mai sus am vrut sa scriu termostat, eram prea concentrat la cod etc etc etc. sper sa intelegeti. vad ca nu mai pot modifica ...

Edited by mariusares, 08 February 2015 - 14:10.


#588
laum

laum

    Member

  • Grup: Members
  • Posts: 839
  • Înscris: 22.09.2005

View Postmariusares, on 08 februarie 2015 - 13:03, said:


Prima tentativa de termometru am codato cu laum acum 1 an.

A nu se intelege ca laum a avut vreo contributie la codarea respectiva, este in totalitate munca lui Marius.
La vremea respectiva totul parea high-tech, am intrat in hora luati de val.

#589
mariusares

mariusares

    Member

  • Grup: Members
  • Posts: 887
  • Înscris: 09.06.2013
ok,
atasez codul pentru rasadnita cu senzor digital de lumina BH1750 I2C
#include <Wire.h>
#include <OneWire.h>
#include <DallasTemperature.h>
#include <LiquidCrystal_I2C.h>
#include <BH1750.h>

BH1750 lightMeter;
#define SENZOR_AER 2 //D2 aer sol rasadnita
#define SENZOR_SOL 3 //D3 senzor aer rasadnita
#define PIN_INCALZIRE 4 //D4 pin comanda incalzire rasadnita
#define PIN_VENTR 5 //D5 pin comanda ventilare rasadnita

int minTemp = 12; //temperatura minima (de noapte)
int maxTemp = 24; //temperatura maxima (de zi cu soare)
int tempVent = 25; //temperatura ventilare
int minLight = 5; //calibrare fotocelula Lux Minim
int maxLight = 10000; //calibrare fotocelula Lux Maxim
OneWire senzoraer(SENZOR_AER);
OneWire senzorsol(SENZOR_SOL);
DallasTemperature aer(&senzoraer);
DallasTemperature sol(&senzorsol);
LiquidCrystal_I2C lcd(0x27, 20, 4); //setup LCD I2C 20x4
//LiquidCrystal_I2C lcd(0x27,16,2); //setup LCD I2C 16x2
void setup() {
Serial.begin(9600);
aer.begin();
sol.begin();
lightMeter.begin();
pinMode(PIN_INCALZIRE, OUTPUT);
pinMode(PIN_VENTR, OUTPUT);
digitalWrite(PIN_INCALZIRE, HIGH);
digitalWrite(PIN_VENTR, HIGH);
lcd.init();
lcd.backlight();
lcd.setCursor(6, 1);
lcd.print("RobotulTau");
lcd.setCursor(5, 2);
lcd.print("Robotul Tau");
lcd.clear();
}
void loop() {
aer.requestTemperatures();
sol.requestTemperatures();
rasadnita();
}
void rasadnita(){
int tempSol = sol.getTempCByIndex(0);
int tempAer = aer.getTempCByIndex(0);
uint16_t lightLevel = lightMeter.readLightLevel();
int templucru = map(lightLevel, minLight, maxLight, minTemp, maxTemp);
if(lightLevel < minLight){
templucru=minTemp;
}
if(lightLevel > maxLight){
templucru=maxTemp;
}
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Aer:");
lcd.print(tempAer);
lcd.print(" Sol:");
lcd.print(tempSol);
lcd.setCursor(0,2);
lcd.print("Temp Lucru: ");
lcd.print(templucru);
lcd.setCursor(0,3);
lcd.print("TMin: ");
lcd.print(minTemp);
lcd.print(" TMax: ");
lcd.print(maxTemp);
lcd.setCursor(0,1);
lcd.print("Temp Aerisire: ");
lcd.print(tempVent);
	 Serial.print("Light: ");
Serial.print(lightLevel);
Serial.println(" lx");
Serial.print("Temperatura Lucru: ");
Serial.println(templucru);
//incalzire sol
if (templucru > tempSol){
digitalWrite(PIN_INCALZIRE, LOW);
}
if (templucru < tempSol){
digitalWrite(PIN_INCALZIRE, HIGH);
}
//ventilare
if (tempAer >= tempVent){
digitalWrite(PIN_VENTR, LOW);
}
if (tempAer < tempVent){
digitalWrite(PIN_VENTR, HIGH);
}
}



puteti modifica intensitatea luminii minima, maxima temperatura minima, maxima, pinii unde sa conectati senzorii etc
laum stii ca informatiile tale au fost precise si de ajutor in acelasi timp sunt sisteme mult mai destpte decat arduino. arduino e ceva basic care functioneaza sigur. e nevoie de ceva DIY ca sa fie functional insa cu rabdare se fac toate. recomand o placa strip board pentru toti cei care vor sa foloseasca astfel de sisteme
codul de mai sus a fost finalizat cu ajutorul lui quwertysecret .
va multumesc pentru informatii si pentru ajutorul acordat
trebuie sa downloadati si libraria ...

va rog sa ma anuntati daca e functionala :P

Attached Files


Edited by mariusares, 08 February 2015 - 18:49.


#590
qwertysecret

qwertysecret

    Member

  • Grup: Members
  • Posts: 813
  • Înscris: 16.11.2006
Multumesc mult, Marius!

Am gasit "cutia cu maimute" de pe vremea studentiei, in pod (noroc cu tata, a pus-o la pastrat; eu ii spusesem s-o arunce...), asa ca am avut acele rezistente la indemana, pentru a finaliza testul de rasadnita

Attached File  20150208_184616.jpg   288.99K   88 downloads

Mai ramane s-o mut la loc definitiv & sa inlocuiesc "motorul" ce mergie cu bio-combustibil (omnivor) cu unul electric

Attached File  20150208_184701.jpg   267.9K   80 downloads

P.S. Felicitari echipei de tenis a Romaniei, pentru calificarea fabuloasa in fata Spaniei! Posted Image

#591
mariusares

mariusares

    Member

  • Grup: Members
  • Posts: 887
  • Înscris: 09.06.2013
da,
uite aici
http://www.ebay.ie/i...=item2330ace86c
pin headers, sunt si mai lungi si mai scurti
montezi tot pe o placa
http://www.ebay.ie/i...=item418f9cebbf
sunt placi si cu gauri individuale
http://www.ebay.ie/i...=item2a3070a9dc
nu trebuie sa stati cu pistolul de lipit in mana in fiecare zi
faci odata si gata
pe placa se poate monta si modulul ceas sau lcd-ul. de la placa la arduino duceti doar 4 fire, 5v+ GND si I2C SCL SDA

#592
meganedoi

meganedoi

    Senior Member

  • Grup: Senior Members
  • Posts: 3,433
  • Înscris: 03.08.2006
Fabuloasa initiativa Marius. Cu ce ai pus aici se diminueaza semnificativ efortul nostru de a face sa functioneze gradina desteapta.
Daca voiai un nume, atunci iata-l: smartgarden :)

#593
mariusares

mariusares

    Member

  • Grup: Members
  • Posts: 887
  • Înscris: 09.06.2013
nu pot evalua acum ... ma doare capul
dimineata era o ceata de nu vedeai la 5 metri apoi pe la 1 a aparut soarele, la 5 s-a inserat a mai tipat si fiimiu pe aici, in mine mai am ceva surse cod ....
am nevoie de cateva beri si un somn bun

#594
corsica

corsica

    Senior Member

  • Grup: Senior Members
  • Posts: 5,947
  • Înscris: 13.04.2007
Iti recomand o tuica buna, lasa naibii berea cu toate prostiile din ea!

Anunturi

Neurochirurgie minim invazivă Neurochirurgie minim invazivă

"Primum non nocere" este ideea ce a deschis drumul medicinei spre minim invaziv.

Avansul tehnologic extraordinar din ultimele decenii a permis dezvoltarea tuturor domeniilor medicinei. Microscopul operator, neuronavigația, tehnicile anestezice avansate permit intervenții chirurgicale tot mai precise, tot mai sigure. Neurochirurgia minim invazivă, sau prin "gaura cheii", oferă pacienților posibilitatea de a se opera cu riscuri minime, fie ele neurologice, infecțioase, medicale sau estetice.

www.neurohope.ro

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

Forumul Softpedia foloseste "cookies" pentru a imbunatati experienta utilizatorilor Accept
Pentru detalii si optiuni legate de cookies si datele personale, consultati Politica de utilizare cookies si Politica de confidentialitate