Greek Aquarist's Boards - Φόρουμ συζητήσεων γιά το χόμπυ του Ενυδρείου

Greek Aquarist's Boards - Φόρουμ συζητήσεων γιά το χόμπυ του Ενυδρείου (http://www.aquatek.gr/vb/index.php)
-   DIY . Φτιάχτο μόνος σου (http://www.aquatek.gr/vb/forumdisplay.php?f=28)
-   -   DIY controller θερμοκρασιας (http://www.aquatek.gr/vb/showthread.php?t=91395)

apostolis.pan 04-04-16 19:20

https://waime.wordpress.com/2015/04/...l_i2c-library/
αυτο το σχεματικο περιπου, αντι για ποτενσιομετρο εχω μια 3,3κ που δεν παιζει ρολο ειναι για το κοντραστ
-------------------------
normal way oxi l2c

Dream Waters 04-04-16 19:26

Μερακλιδικη δουλεια που το αποτελεσμα σε δικαιωνει.Το τεσταρησες να δεις οτι η θερμοκρασια ειναι σωστα καλιμπραρισμενη??Επισης μια παρατηρησουλα μικρη.Δε μαρεσε το φινιρισμα.Ας επαιρνες ενα κουτι ετοιμο κομμενο;)

apostolis.pan 04-04-16 19:28

εχεις καμια ιδεα τι γινετε? απο οτι βλεπω το παθενουν παρα πολοι και δεν εχουν βγαλει ακρη τι φταιει ακριβως, το οθονακι δουλευει αψογα και μετα απο 9-12 ωρες βγαζει κινεζικα , ενω το υπολοιπο προγραμμα λειτουργει κανονικα.
προς το παρον το εχω βαλει να δουλευε με τροφοδοσια απο το usb μπας και του χει κατσει μικρος ο μετασχηματιστης , θα το αφησω μεχρι αυριο αν και δεν πιστευω να φταιει αυτο.. μακαρι να νε αυτο παντος
-------------------------
φιλε dream το μου χει φιγει λιγο ο τροχος στο οθονακι, επησις κουτι ετοιμο κομμενο δυσκολο. θα το κρυψω εν καιρο αυτο που φαινετε δεν ειναι κατι. στην αναγκη στοκαρω και βαφω το λιγοτερο ειναι σε ευχαριστω για τα καλα σου λογια :)

antricos 04-04-16 19:29

Τι τροφοδοτικό έχεις βάλει? Πόσα mA?
Δοκίμασε να βάλεις έναν πυκνωτή 1μF-10μF μεταξύ vcc και ground της οθόνης. Κόλλα τον πάνω στην οθόνη απευθείας.

apostolis.pan 04-04-16 19:35

για ποιο λογο..
δεν νομιζω πως θα κερδισω κατι ..

του βαλα εναν μετασχηματιστη 6-7 V με γεφυρα πανω ,που τον βρηκα στα γρηγορα στα πραγματα μου, αμπερ δεν ξερω.. αλλα φανταστικα οτι αφου το αναψε και το δουλεψε , και μιας που διαβασα και τα σπεκς απο το arduino οτι δεν θελει και τιποτα τρελο, μια χαρα δεν νομιζω να φταιει αυτο.. απλα δεν χανω τιποτα να δοκιμασω πως δουλευει με usb

αμα δεν βγαλω ακρη θα δοκιμασω τον πυκνωτη .. αλλα δεν νομιζω.

antricos 04-04-16 19:39

Δες εδω:
Decoupling capacitor

6-7 volt τα μέτρησες με φορτίο επάνω?
Επίσης έβαλες έναν μεγάλο πυκνωτη μετά τη γέφυρα για εξομάλυνση? (~1000μF)

apostolis.pan 04-04-16 19:48

1ον εχει πυκνωτη η γεφυρα.. δευτερον ξερω τι δουλεια κανει ο πυκνωτης και για αυτο δεν πιστευω πως θα κερδισω κατι στην συγκεκριμενη περιπτωση , αλλα παρολα αυτα εαν δεν βγαλω ακρη θα δοκιμασω και αυτο
-------------------------
μετα απο αρκετο ψαξιμο , ισος εχεις δικιο θα το δικιμασω . βρηκα ενα παρομοιο σχεματικο, μακαρι να δουλεψει

peritzan 04-04-16 20:04

Παράθεση:

Αρχική Δημοσίευση από apostolis.pan (Μήνυμα 935136)
μια χαρα ομορφα λαμπακια αλλα αντιμετοπιζω ενα αλλο προβλημα τωρα και δεν μπορω να καταλαβω τι φτεει.. μετα απο συγκεκριμενες ωρες το οθονακι βγαζει οτι να νε, ενω τις πρωτες ωρες δουλευει αψογα .. βρηκα αυτο το αρθρο απο εναν τυπο. και προσπαθω να βγαλω ακρη
http://forum.arduino.cc/index.php?topic=235397.0
αμα εχει τυχει σε καποιον ας μου πει με λιγα λογια τι του εφτεγε

δεν ξερω καλα αγγλικα και δεν καταλαβαινω και πολα απο το αρθρο

παιζει να ειναι επειδη εχω σχετικα μικρο μετασχηματιστη?
-------------------------
γενικα εχει αντιμετωπισει καποιος αυτο το θεμα?

Τα τεχνικα δεν τα κατεχω,αυτος εχει το ιδιο προβλημα με σενα και του απαντα ο αλλος οτι φταιει το μηκος του καλωδιου μαλλον (κι αυτος σε ενυδρειο το εχει),οι προτεινομενες λυσεις ειναι :Slower I2C, or lower pullup resistor, or an other cable.
Τελικα εκανε αυτο : I placed a 3.9K ohm resistor between the +5 rail and the SDA and another one between the +5 rail and SCL. The circuit still works! That's a good sign και δουλεψε

Να προσθεσω οτι οι τιμες αυτες αφορουν την δικια του κατασκευη,στη δικια σου ισως διαφερει

apostolis.pan 04-04-16 21:40

σε ευχαριστω πολυ , αλλα αυτο αφορα αλλη συνδεσμολογια :)

προς το παρον εβαλα τον πυκνωτη να δω μπας σοθει η κατασταση

puntomad 04-04-16 22:10

απο το usb παιρνει 5V 500mah οποτε το μετασχηματιστακι σου λογικα κανει μια χαρα.
Δεν εχω παρατηρησει οι ρελεδες σου τι χαρακτηριστικα εχουν, μηπως τραβανε αρκετα.

Τι ακριβως σου κανει? Βλεπεις αλλα για αλλα?
Να ξερεις οτι μπορει να φταιει και η ιδια η οθονη και μετα απο καποιες ωρες να την "ακουει"

apostolis.pan 04-04-16 22:26

οι ρελεδες ειναι καλυτεροι απο οτι περιμενα, και οχι δεν φταιει αυτο..
ο μετασχηματιστης ναι και εγω πιστευω πως κανει μια χαρα.. τωρα το οθονακι δεν νομιζω να εχει θεμα. ισως και να νε κατι στον κωδικα

δουλευε ολο το συστημα κανονικα για 9με 12 ωρες και μετα το οθονακι γεμιζει ασχετους χαρακτηρες ενω το υπολοιπο συστημα εξακολουθει να δουλευει κανονικα

puntomad 04-04-16 22:38

Αν εισαι οκ απο ρευμα (δες τωρα και με τον πυκνωτη)
μπορει να εχεις θεμα στον κωδικα.

Οταν ειχα φτιαξει ενα μικρο αυτοκινητακι που πηγαινε μονο του, ειχα βαλει πολλα στον κωδικα και καποια στιγμη μετα απο ωρα κρασαρε ο κωδικας και ηθελε reset για να ξαναπαιξει. Αλλα οταν βαραγε δεν επαιζε σωστα το αυτοκινητακι.

apostolis.pan 05-04-16 00:13

μονο που στην περιπτωση μου δεν μπορω να παιξω με reset επειδη οριζω την θερμοκρασια που θελω να δουλευει ο κοντρολερ και απο την στιγμη που κανει reset επανερχετε στην καθορισμενη.. αυτο γινετε αμα με καποιο τροπο αποθηκευσω καπου την κατασταση αυτη.. Και μαλλον δεν θα μου φτασουνε τα καναλια για αυτο και εμενα αυτη ηταν η πρωτη μου σκεψη..

antricos 05-04-16 16:42

Γίνεται αυτό! Σε είχα ρωτήσει αν αποθήκευες στην eeprom την τιμή της θερμοκρασίας γιατί έτσι δεν μπορείς να δουλέψεις με μια διακοπή ρεύματος έπαθες ζημια. Δες λίγο πως λειτουργεί η eeprom. Άλλα να ξερες πριν αρχίσεις να γράφεις σε αυτήν ότι έχει πεπερασμένο αριθμό εγγραφών περίπου 100.000. Μην την βάλεις μέσα σε καμιά loop γιατί την πέθανες.

apostolis.pan 05-04-16 17:08

ωραιο θαταν αλλα δεν θα κατσω να κανω κατι τετοιο .. παντος αμα το κανα θα το κανα σε καρτα μνημης
,που ειδικα μ2 και τετοια εχω αρκετες. φιλε μου μεχρι στιγμης με τον πυκνωτη πανω δεν εχει μπερδεψει το οθονακι , θα σου πω και πιο αργα αμα ειναι.
Επιπλεον, πειρα ασφαλειες και λαμπακια 220 για σασι
και 2 ποτενσιομετρα ,ενα για την φωτινοτητα και ενα για κοντραστ οπου θα κατσουν στο πισω μερος του κουτιου . οταν βρω χρονο ξαναπιανω δουλεια.θα σηκωθει ολη η πλακετα να ξαναδουλευτει, θα προσθεσω γενικα διαφορα ακομα. και εχω φτιαξει και αλλον ενα κωδικα πιο ξεκουραστο για να δοκιμασω εαν δεν δουλεψει παλι το οθονακι. λεντακια δεν πειρα για να βγαζω ενδεικτικα ενα power on kai ena gia thn loopa,

antricos 05-04-16 18:38

Κάποια στιγμή είχα φτιάξει και εγώ ένα αλλά το παράτησα το project γιατί μου έσπασε τα νεύρα ο θόρυβος...

Δες εδώ:
https://dl.dropboxusercontent.com/u/...405_175647.jpg
https://www.youtube.com/watch?v=mgw5YczIRJI

apostolis.pan 05-04-16 18:48

ωραιο ειναι το μενου! και το κουτι σταιλαδικο.. τι ενοεις θορυβος? κανονικος θορυβος? η σου κρασαρε το οθονακι απο ημ θορυβο.. τι σου εκανε θορυβο.. εμενα το ολο κυκλωμα ουτε κιχ δεν κανει :P ετσι με μενου θα ειναι το επωμενο προτζεκτ που θα ειναι weather controller οταν βρω λευτα . το οποιο θα εμπεριεχει σιγουρα βροχη, ισος επιφανειακα ρευματα.. το σκεφτομουν και για επιφανειακο αερα αλλα θα ειναι πιο πολυ για παλανταριουμ.. γενικα το σκεφτομαι ακομα ., αλλα θα βγει δυσκολα ετσι οπως το εχω στο μυαλο μου.
θα ηθελα να το κανω του τυπου να επιλεγεις εποχες, βιοτοπο, και αναλογα να ριθμιζει τις καιρικες συνθηκες απο τον αναλογο βιοτοπο για μεγαλη χρονικη διαρκεια. για 50 μερες ισος που εκει με παει η millis .και θα ηθελα να το κανω να επικοινωνει και με αυτον τον κοντρολλερ για να μπορω να μεταβαλω την θερμοκρασια αναλογα με την εποχη, και να μην εχω σταθερη θερμοκρασια ολο τον χρονο... αλλα γενικα ακομα το οργανονω στο κεφαλι μου, και στην τσεπη μου

antricos 05-04-16 19:01

Όταν λέω θόρυβο εννοώ AC παρεμβολές που μπερδευουν το arduino και δεν μετράει σωστά...
Αν θες να δουλέψεις με το χρόνο (ώρες, μέρες, μηνες) θα βάλεις ρολόι.
Κάτι τετοιο:
http://www.ebay.com/itm/2PCS-DS3231-...IAAOSwhcJWNzHB

apostolis.pan 06-04-16 17:21

αυτο που λες με τον θορυβο λυνεται αρκετα ευκολα δουλευοντας στα καλωδια που θες να μονωσεις ημ ειτε πλεγμα ειτε αλουμινοχαρτο. γενικοτερα απο μεταλο δεν περναει τιποτα.και γενικα ο κανωνας ειναι οτι δεν παιρνας υψηλων τασεων καλοδια κοντα με καλοδια σηματος.ειναι κριμα αμα το αφησες για αυτο

antricos με τον πυκνωτη επανω δουλευει πιο σωστα ,αλλα και παλι το κανει σχεδον μετα τις διπλασιες ωρες απο πριν ..

σημερα το συζηταγα με εναν φιλο, και μου πε οτι μετα απο καποιες ωρες το arduino μπενει σε αναμονη, η καπως ετσι.. με τα πολλα ο σωστος τροπος για να λυθει αυτο το θεμα απο οτι καταλαβα ειναι να τροφοδοτισεις το οθονακι απο εξωτερικο τροφοδοτικο, και να εφαρμοσεις εναν σταθεροποιητη τασης στα 5 βολτ. το επωμενο μου βημα ειναι να τραβηξω τροφοδοσια κατευθειαν απο το εξωτερικο τροφοδοτικο, να εφαρμοσω και την αναλογη αντισταση για να κατεβω στα 5 βολτ, θα μπει ενας πυκνωτης εκει προληπτικα, αν και δεν χρειαζεται. και ενας σιγουρα στο υπολοιπο κυκλωμα.

apostolis.pan 10-04-16 02:38

2 Συνημμένο(α)
Μπηκαν λαμπακια 220 μετα τους ρελεδες, μπηκαν 2 ποτενσιομετρα ενα για contrast και ενα για φωτεινοτητα , και μπηκαν και ασφαλειες. το προβλημα που ειχα μαλλον εχει λυθει , θα δειξει και στο μελον, και περα απο ενα ανεμιστηρακι που θελω να βαλω στο κουτι και τα τελειωτικα μαζεματα το προτζεκτ εχει τελειωσει. αλωστε πολυ καιρο εφαγε,,
λειπει ακομα μια ασφαλεια βασικα που μου εσπασε η βαση καταλαθος..

εμπεριεχει
κουμπι ον οφ
ον οφ στο οθονακι
led για θερμανση ,και ενδεικτικη λαμπα πριν την πριζα
led για ψηξη ,και ενδεικτικη λαμπα πριν την πριζα,
ποτενσιομετρο για contrast
ποτενσιομετρο για φωτεινοτητα,
κουμπια πανω κατω για την θερμοκρασια,
και 3 ασφαλειες 16αμπερ μια στην κεντρικη τροφοδοσια
μια πριν την πριζα της θερμανσης και μια πριν την πριζα της ψηξης
νομιζω πλεον πως το συστημα που σκοπευα να φτιαξω ειναι πληρες

Ευχαριστω πολυ ,οσους μειραστικαν μαζι μου την αγωνια μου,
οσους συμβαλαν δινοντας μου συμβουλες και ιδεες,
και οσους εφαγαν χρονο απο την ζωη τους τελος παντον
προσπαθωντας να λυσουν μαζι μου καποια προβληματα που συναντησα. :)
πραγματοποιωντας αυτο το προτζεκτ πειρα πολες πολυτιμες γνωσεις ,
οπου ειμαι διατεθημενος να τις μοιραστω με οποιον χρειαστει κατι στο μελλον
οποτε μην διστασετε ειτε δημοσια ητε σε πμ, θα ειμαι διαθεσιμος να βοηθησω οπου μπορω


DSC_0032.jpgDSC_0033.jpg

apostolis.pan 23-06-16 02:43

Με αφορμη την εργασια που παραδινω αυτην την βδομαδα, καθισα και ψιλομαζεψα κωδικα και σχεματικα .
ο κωδικας.

#include <LiquidCrystal.h>
#include <OneWire.h>

LiquidCrystal lcd(5, 4, 3, 2, 1, 0);


int DS18S20_Pin = 6;
OneWire ds(DS18S20_Pin);

int b_up=7;
int b_down=8;
int state=25;
int buttonStateUp = 0;
int buttonStateDown = 0;
int heat = 9;
int cool = 10;
int heatstart=0;
int coolstart=0;
int beeper=13;
long temptime=0;
long n=0;
void setup()
{
lcd.begin(16, 2);
lcd.print("*Temperature*");
lcd.setCursor(0,1);
lcd.print(" *Controller*");
delay(5000);


pinMode(b_up, INPUT);
pinMode(b_down, INPUT);
pinMode(heat, OUTPUT);
pinMode(cool, OUTPUT);
pinMode(beeper,OUTPUT);

}

void loop() {
temptime=millis();
buttonStateUp=digitalRead(b_up);
buttonStateDown=digitalRead(b_down);


if (buttonStateUp==HIGH & state<38)
{

state= state+1;
buttonStateUp=LOW;
lcd.setCursor(13, 1);
lcd.print(state);
}


if (buttonStateDown==HIGH&state>16)
{

state= state-1;
buttonStateDown=LOW;
lcd.setCursor(13, 1);
lcd.print(state);
}


delay(150);

float temperature = getTemp();
if (temptime>=n+3000)
{
n=temptime;
if (temperature>800|temperature<-800)
{

lcd.print("NO SENSOR..no sensor..NO SENSOR..no sensor..NO SENSORNO SENSOR..no sensor..NO SENSOR..no sensor..NO SENSOR") ;
delay(500);

}

else
{

/*if (temperature>30&temperature<14)
{

digitalWrite(beeper,HIGH);
digitalWrite(beeper,LOW);
delay(500);

}*/

if (temperature<state)
{

digitalWrite(heat,HIGH);

}

else digitalWrite(heat,LOW);


if (temperature> state)
{

digitalWrite(cool,HIGH);

}

else digitalWrite(cool,LOW);

lcd.setCursor(0,0);
lcd.print("RealTime|");
lcd.print("Control");
lcd.setCursor(0, 1);
lcd.print(" ");
lcd.print(temperature);
lcd.print("C | To:");
lcd.print(state);
lcd.print("C ");
delay(200);
}
}

}

float getTemp(){


byte data[12];
byte addr[8];

if ( !ds.search(addr)) {

ds.reset_search();
return -1000;
}

if ( OneWire::crc8( addr, 7) != addr[7]) {
Serial.println("CRC is not valid!");
return -1000;
}

if ( addr[0] != 0x10 && addr[0] != 0x28) {
Serial.print("Device is not recognized");
return -1000;
}

ds.reset();
ds.select(addr);
ds.write(0x44,1);

byte present = ds.reset();
ds.select(addr);
ds.write(0xBE);


for (int i = 0; i < 9; i++) {
data[i] = ds.read();
}

ds.reset_search();

byte MSB = data[1];
byte LSB = data[0];

float tempRead = ((MSB << 8) | LSB);
float TemperatureSum = tempRead / 16;

return TemperatureSum;
}

ο κωδικας ενδεχεται να εχει και καποια junk μεσα , ειναι απο τις αρχες που ειχα πετυχει αυτο που ηθελα αλλα δεν τον ειχα καθαρισει.. βαρεθηκα να τα βγαλω :grin::grin: και στην σχολη ετσι θα τον δοσω.. οταν κατσω να τον καθαρισω θα κανω edit.

apostolis.pan 23-06-16 02:50

1 Συνημμένο(α)
και το σχεματικο
controller shematic.jpg


Όλες οι ώρες είναι GMT +2. Η ώρα τώρα είναι 10:45.

Forum engine powered by : vBulletin Version 3.8.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright 2000-2016 Greek Aquarists Board

Page generated in 0,02095 seconds with 10 queries