Jump to content
ELFORUM - Forumul Electronistilor

Seppy

Membru activ
  • Content Count

    160
  • Joined

  • Last visited

Community Reputation

2 Neutral

About Seppy

  • Rank
    Membru

Profile Information

  • Locatie
    Arad

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Seppy

    pic temporizator cu 4 timpi

    Buna ziua , daca se poate , as dori si eu softul pentru automatizarea asta . Va multumesc !
  2. Buna ziua, detine cineva dintre Dvs orice documentatie de la o instalatie de clopote electronice http:// fabricat de PANATIM arad ? Multumesc !
  3. Seppy

    ceas arduino+rtc+tm1637+encoder+dht cu alarma

    Am gasit pe internet un proiect pe http://www.kh-gps.de/ardu_clock.htm si am adaugat pe rand display LCD si dupa aceea unul cu 3 buc HCMS 2972 (care i-mi place mai mult ) http:// Fisierele mp3 le-am facut cu ajutorul unui " program text to speech "de pe internet ( a fost partea cea mai lunga deoarece cu program free am avut numai 3 fisiere pe zi )
  4. Seppy

    ceas arduino+rtc+tm1637+encoder+dht cu alarma

    Si eu am unul in probe , cu RTC , Arduino nano , modul mp3 si afisaj , care la apasare buton anunta ora si vocal .Daca exista interes postez si mai multe
  5. Seppy

    ceas arduino+rtc+tm1637+encoder+dht cu alarma

    Salutare se pare ca pe https://create.arduino.cc/projecthub/lagsilva/complete-digital-clock-including-alarm-and-motion-sensor-da6b59?ref=user&ref_id=103734&offset=12 este postat si codul pentru Arduino . Spor la mesterit !
  6. Seppy

    automatizare distilare

    m-am ocupat azi de program si am adaugat comenzile RTC -ului si al pompei si am reusit sa-l pornesc , merge ok . Mai am de adaugat masurarea temperaturii cu dioda si la depasirea unui prag sa indice asta prin aprinderea unui LED . daca am probleme acolo mai intreb . Va multumesc pentru idee ( a fost salvatoare ) Seppy
  7. Seppy

    automatizare distilare

    O sa incerc si varianta asta , daca intimpin greutati o sa mai intreb aici . Multumesc !
  8. Seppy

    automatizare distilare

    Multumesc , o sa modific sa pun delay mai mic sa nu afecteze afisarea ceasului pe display , dar celalalt cu luare din tabel a valorii corespondent temperaturii si afisarea ei ma cam depaseste mult
  9. Seppy

    automatizare distilare

    buna seara , am facut un montaj pentru -mi fi de ajutor la distilare de tuica ( pentru uz personal ) care afiseaza ora si data cu RTC , temperatura si concentratia procentuala pe aburii din coloana cu un DS 1820 , statusul pompei de apa precum si monitorizarea pragului de temperatura din racitor cu o dioda 1N4007 ca senzor , totul pe baza Arduino .http://i67.tinypic.com/b8n6dk.jpg schema , http://i68.tinypic.com/xe0itu.jpg montajul si displayul http://i67.tinypic.com/308h6wo.jpg Ideea am gasit-o pe pagina http://www.artisan-distiller.net/phpBB3/viewtopic.php?p=133345&sid=09b28f151d419c99c84eff8c70d92199#. Nu reusesc sa afisez pe display concentratia procentuala si la ceas "sar " secundele din doua in doua , restul functioneaza (atat cat am putut proba ), nu mai stiu mai departe ,sint foarte incepator , codul l-am " adunat " din diferite surse , mai mult nu stiu sa fac . Postez si " codul " #include <Wire.h> #include "RTClib.h" #include <OneWire.h> #include <LiquidCrystal.h> int DS18S20_Pin = 6; //DS18S20 Signal pin on digital 6 LiquidCrystal lcd(12, 11, 10, 9, 8, 7); //Temperature chip i/o //digitalpin 5 led qvertemperature cooler //analogpin 0 to ground cooler temperatur diode double Setpoint; // double double Input, Output; const int numReadings = 30; double readings[numReadings]; // the readings from the analog input int index = 0; // the index of the current reading double total = 0; // the running total double input = 0; // the average //Temperature chip i/o OneWire ds(DS18S20_Pin); // on digital pin 6 float conversionTable[][2] = { {78.1, 95.5}, {78.2, 92}, {78.3, 90.2}, {78.4, 89}, {78.5, 88.5}, {78.6, 88}, {78.7, 87.5}, {78.8, 87.1}, {78.9, 86.7}, {79, 86.4}, {79.1, 85.9}, {79.2, 85.4}, {79.3, 85.1}, {79.4, 84.8}, {79.5, 84.6}, {79.6, 84.3}, {79.7, 84.1}, {79.8, 83.8}, {79.9, 83.6}, {80, 83.4}, {80.1, 83.2}, {80.2, 83}, {80.3, 82.7}, {80.4, 82.4}, {80.5, 82.2}, {80.6, 81.9}, {80.7, 81.6}, {80.8, 81.4}, {80.9, 81.2}, {81, 80.8}, {81.1, 80.4}, {81.2, 80.3}, {81.3, 80.1}, {81.4, 79.9}, {81.5, 79.8}, {81.6, 79.6}, {81.7, 79.5}, {81.8, 79.3}, {81.9, 79.1}, {82, 79}, {82.1, 78.8}, {82.2, 78.7}, {82.3, 78.5}, {82.4, 78.3}, {82.5, 78.2}, {82.6, 78}, {82.7, 77.9}, {82.8, 77.7}, {82.9, 77.5}, {83, 77.4}, {83.1, 77.2}, {83.2, 77}, {83.3, 76.9}, {83.4, 76.7}, {83.5, 76.5}, {83.6, 76.4}, {83.7, 76.2}, {83.8, 76}, {83.9, 75.9}, {84, 75.7}, {84.1, 75.5}, {84.2, 75.4}, {84.3, 75.2}, {84.4, 75}, {84.5, 74.8}, {84.6, 74.7}, {84.7, 74.5}, {84.8, 74.3}, {84.9, 74.1}, {85, 73.9}, {85.1, 73.7}, {85.2, 73.6}, {85.3, 73.4}, {85.4, 73.2}, {85.5, 73}, {85.6, 72.8}, {85.7, 72.7}, {85.8, 72.5}, {85.9, 72.3}, {86, 72.1}, {86.1, 71.9}, {86.2, 71.7}, {86.3, 71.5}, {86.4, 71.3}, {86.5, 71.1}, {86.6, 70.9}, {86.7, 70.7}, {86.8, 70.5}, {86.9, 70.3}, {87, 70.1}, {87.1, 69.8}, {87.2, 69.6}, {87.3, 69.4}, {87.4, 69.2}, {87.5, 69}, {87.6, 68.8}, {87.7, 68.5}, {87.8, 68.3}, {87.9, 68.1}, {88, 67.9}, {88.1, 67.6}, {88.2, 67.4}, {88.3, 67.1}, {88.4, 66.9}, {88.5, 66.7}, {88.6, 66.4}, {88.7, 66.1}, {88.8, 65.7}, {88.9, 65.4}, {89, 65}, {89.1, 64.5}, {89.2, 64}, {89.3, 63.7}, {89.4, 63.4}, {89.5, 63}, {89.6, 62.7}, {89.7, 62.4}, {89.8, 62.1}, {89.9, 61.7}, {90, 61.4}, {90.1, 60.9}, {90.2, 60.4}, {90.3, 59.7}, {90.4, 59.1}, {90.5, 58.8}, {90.6, 58.4}, {90.7, 58.1}, {90.8, 57.7}, {90.9, 57.4}, {91, 57}, {91.1, 56.7}, {91.2, 56.3}, {91.3, 56}, {91.4, 55.6}, {91.5, 55.2}, {91.6, 54.8}, {91.7, 54.5}, {91.8, 54.1}, {91.9, 53.7}, {92, 53.3}, {92.1, 52.9}, {92.2, 52.5}, {92.3, 52.1}, {92.4, 51.7}, {92.5, 51.3}, {92.6, 50.9}, {92.7, 50.5}, {92.8, 50}, {92.9, 49.6}, {93, 49.2}, {93.1, 48.7}, {93.2, 48.3}, {93.3, 47.7}, {93.4, 47.2}, {93.5, 46.8}, {93.6, 46.3}, {93.7, 45.8}, {93.8, 45.4}, {93.9, 44.9}, {94, 44.4}, {94.1, 43.9}, {94.2, 43.4}, {94.3, 42.9}, {94.4, 42.4}, {94.5, 41.8}, {94.6, 41.3}, {94.7, 40.8}, {94.8, 40.2}, {94.9, 39.7}, {95, 39.1}, {95.1, 38.5}, {95.2, 38}, {95.3, 37.4}, {95.4, 36.8}, {95.5, 36.2}, {95.6, 35.6}, {95.7, 35}, {95.8, 34.3}, {95.9, 33.7}, {96, 33}, {96.1, 32.4}, {96.2, 31.7}, {96.3, 31}, {96.4, 30.3}, {96.5, 30}, {96.6, 29.8}, {96.7, 29.5}, {96.8, 28.8}, {96.9, 28}, {97, 27.3}, {97.1, 26.5}, {97.2, 25.7}, {97.3, 24.9}, {97.4, 24}, {97.5, 23.2}, {97.6, 22.3}, {97.7, 21.5}, {97.8, 20.6}, {97.9, 19.8}, {98, 19}, {98.1, 18.2}, {98.2, 17.4}, {98.3, 16.6}, {98.4, 15.8}, {98.5, 15}, {98.6, 14}, {98.7, 13}, {98.8, 12}, {98.9, 11}, {99, 10}, {99.1, 9}, {99.2, 8}, {99.3, 7}, {99.4, 6}, {99.5, 5}, {99.6, 4}, {99.7, 3}, {99.8, 2}, {99.9, 1}, {100, 0}}; int buttonPin1 = 2; //Start button on digitalpin 2 int buttonPin2 = 3; //Stop button on digitalpin 3 int ledPin = 4; int buttonStatus1 = 0;//relais for pump on on digitalpin 4 int buttonStatus2 = 0; RTC_DS1307 RTC; const int in = A0; // used to bias the diode anode const int t0 = 20.3; const float vf0 = 573.44; // variables will change: int rledPin = 5;// red led on on digitalpin 5 int u; float dtemp, dtemp_avg, t; void setup(void) { Serial.begin(9600); pinMode(in, INPUT_PULLUP); // set the pin IN with npull up to bias the diode pinMode(rledPin, OUTPUT); // set pin as output pinMode(ledPin, OUTPUT); pinMode(buttonPin1, INPUT); pinMode(buttonPin2, INPUT); Serial.begin(9600); lcd.begin(20, 4); Wire.begin(); RTC.begin(); if (! RTC.isrunning()) { //Serial.println("RTC is NOT running!"); // following line sets the RTC to the date & time this sketch was compiled RTC.adjust(DateTime(__DATE__, __TIME__)); } } void loop(void) { DateTime now = RTC.now(); lcd.setCursor(4, 0); if ( now.hour() < 10) { lcd.print(" "); lcd.print(now.hour(), DEC); } else { lcd.print(now.hour(), DEC); } lcd.print(":"); if ( now.minute() < 10) { lcd.print("0"); lcd.print(now.minute(), DEC); } else { lcd.print(now.minute(), DEC); } lcd.print(":"); if ( now.second() < 10) { lcd.print("0"); lcd.print(now.second(), DEC); } else { lcd.print(now.second(), DEC); } lcd.print(" "); lcd.setCursor(3, 1); if ( now.day() < 10) { lcd.print("0"); lcd.print(now.day(), DEC); } else { lcd.print(now.day(), DEC); } lcd.print("/"); if ( now.month() < 10) { lcd.print("0"); lcd.print(now.month(), DEC); } else { lcd.print(now.month(), DEC); } lcd.print("/"); lcd.print(now.year(), DEC); lcd.print(" "); delay(1000); dtemp_avg = 0;// afisare temp dioda pe serial for (u = 0; u < 1024; u++) { float vf = analogRead(A0) * (4976.30 / 1023.000); //Serial.println(vf); dtemp = (vf - vf0) * 0.4545454; dtemp_avg = dtemp_avg + dtemp; } t = t0 - dtemp_avg / 1024; Serial.print("temperature in Celcius degree) = " ); Serial.println(t); delay (1000); if (t > 60 ) // comutare iesire de atentionare temperatura racitor { digitalWrite(rledPin, HIGH); }else { digitalWrite(rledPin, LOW); } // start stop pompa alimentare racitor buttonStatus1 = digitalRead(buttonPin1); buttonStatus2 = digitalRead(buttonPin2); //Check(==) if the first button(START) is HIGH, AND(&&) the second button (STOP) is LOW, if yes turn the LED on. if (buttonStatus1 == HIGH && buttonStatus2 == LOW) { digitalWrite(ledPin, HIGH); lcd.setCursor(1, 3); lcd.print("Pumpe Ein"); lcd.setCursor(10, 3); lcd.print(" "); } //Check(==) if the first button (START) is LOW, AND(&&) the second button (STOP is HIGH, if yes turn the LED off. if (buttonStatus1 == LOW && buttonStatus2 == HIGH) {digitalWrite (ledPin, LOW); lcd.setCursor(10, 3); lcd.print("Pumpe AUS "); lcd.setCursor(1, 3); lcd.print(" ");} float temperature = getTemp();// afisare temperatura coloana distilare //Serial.println(temperature); lcd.setCursor(0, 2); lcd.print(" ? % Alk"); lcd.setCursor(12,2); lcd.print(temperature); lcd.setCursor(17,2);lcd.print(" \52C "); delay(100); //just here to slow down the output so it is easier to read } //citire temperatura float getTemp(){ //returns the temperature from one DS18S20 in DEG Celsius byte data[12]; byte addr[8]; if ( !ds.search(addr)) { //no more sensors on chain, reset search 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); // start conversion, with parasite power on at the end byte present = ds.reset(); ds.select(addr); ds.write(0xBE); // Read Scratchpad for (int i = 0; i < 9; i++) { // we need 9 bytes data[i] = ds.read(); } ds.reset_search(); byte MSB = data[1]; byte LSB = data[0]; float tempRead = ((MSB << 8) | LSB); //using two's compliment float TemperatureSum = tempRead / 16; return TemperatureSum; { } } Daca aveti bunavointa sa ma ajutati va multumesc ! Seppy
×