Seguimi su Youtubue
Iscriviti
Se desideri, puoi effettuare un'iscrizione gratuita al forum per entrare nella nostra community.
Ricerca Avanzata
Pubblicità Google AdSense
Answers
Se necessiti di aiuto, clicca il pulsante "Cerco Aiuto" (disponibile anche per i non iscritti).
Ultimi argomenti
» Codice display a 7 segmenti - Arduino
Da fulvio Ven Giu 02, 2017 10:00 am

» DUE SKETCH INSIEME? SI PUO' FARE?
Da Alessandro2003 Mer Mag 31, 2017 6:37 pm

» Smartphone sotto i 70€ economico: Winnovo K43
Da Poderak Mar Mag 30, 2017 10:32 am

» Centralina controllo termico multizona
Da Poderak Dom Mag 28, 2017 9:10 pm

» programma arduino
Da Poderak Gio Mag 25, 2017 3:12 pm

» pilotare 5 matrix: max7219
Da Poderak Gio Mag 25, 2017 3:10 pm

» orologio con LCD.
Da fulvio Lun Mag 22, 2017 12:51 am

» rilevare/intercettare solo la chiusura di una pagina web
Da Poderak Sab Mag 20, 2017 9:36 pm

» Arduino Create
Da Poderak Dom Mag 14, 2017 6:42 pm

I postatori più attivi del mese
fulvio
 

Arduino ed rtc, come impostarlo?

Vedere l'argomento precedente Vedere l'argomento seguente Andare in basso

Arduino ed rtc, come impostarlo?

Messaggio Da Dock il Sab Giu 18, 2016 6:34 pm

Un ciao a tutti volevo porre un quesito.. io ho questo sketch che comanda un motorino passo passo
che a sua volta apre e chiude una porticina ora voorei per esempio far aprire ad arduino la porta alla 7 e chiuderla alle 20..
Quindi come faccio ad inserire nel codice l'orario tramite il modulo rtc?
Codice:
#include <Stepper.h>
    #define STEPS  100  
    Stepper small_stepper(STEPS, 2, 4, 3, 5);
    int  Steps2Take;
    void setup()  
    {
    }

    void loop()  
    {
      small_stepper.setSpeed(200);  
      Steps2Take  =  20048;  
      // Rotate CW For a complete rotation
      // Change this number for change the degrees of the rotation
      small_stepper.step(Steps2Take);
      delay(2000);
      small_stepper.setSpeed(200);  
      // Change this for change the speed
      Steps2Take  =  -20048;  // Rotate CCW
      small_stepper.step(Steps2Take);
      delay(2000);}

Chiaramente arduino alle 7 mi deve far funzionare
Codice:
Steps2Take  =  -20048;
mentre alle 20
Codice:
Steps2Take  =  20048;
Questo perchè il motorino inverte la corsa avete qualche idea? un grazie in anticipo..
avatar
Dock
Livello uno
Livello uno

Messaggi Messaggi : 14
Crediti Crediti : 23
Reputazione Reputazione : 0
Data d'iscrizione Data d'iscrizione : 01.03.16
Età Età : 37

Vedi il profilo dell'utente

Tornare in alto Andare in basso

Re: Arduino ed rtc, come impostarlo?

Messaggio Da Poderak il Sab Giu 18, 2016 7:13 pm

Ciao,

Sinceramente ancora non ho provato il modulo RTC ma penso di farlo prima o poi. Anche sul Fishino c'è quindi devo proprio provarlo non appena possibile! Comunque dando un'occhiata ho visto che bisogna scaricare una libreria che ti permette di facilitare l'utilizzo di questo modulo.

Qual è il modello del tuo RTC? Ciao!
avatar
Poderak
♔ Amministratore

Messaggi Messaggi : 4190
Crediti Crediti : 11714
Reputazione Reputazione : 186
Data d'iscrizione Data d'iscrizione : 08.03.11
Età Età : 18
Località Località : Brescia

Vedi il profilo dell'utente http://www.wikiinfo.net

Tornare in alto Andare in basso

Re: Arduino ed rtc, come impostarlo?

Messaggio Da Dock il Sab Giu 18, 2016 7:29 pm

Grazie per la risposta il modulo è il rtc ds1307 ho scaricato le librerie iol modulo funziona bene, ma ora come inserisco ora inizio e ora fine del singolo ciclo? No No
avatar
Dock
Livello uno
Livello uno

Messaggi Messaggi : 14
Crediti Crediti : 23
Reputazione Reputazione : 0
Data d'iscrizione Data d'iscrizione : 01.03.16
Età Età : 37

Vedi il profilo dell'utente

Tornare in alto Andare in basso

Re: Arduino ed rtc, come impostarlo?

Messaggio Da Poderak il Sab Giu 18, 2016 8:36 pm

Devi allora scaricarti la libreria RTCLib e dare un'occhiata a questo classico esempio di codice:

Codice:
// Date and time functions using a DS1307 RTC connected via I2C and Wire lib
 
#include <Wire.h>
#include "RTClib.h"
 
RTC_DS1307 RTC;
 
void setup () {
    Serial.begin(57600);
    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 () {
    DateTime now = RTC.now();
   
    Serial.print(now.year(), DEC);
    Serial.print('/');
    Serial.print(now.month(), DEC);
    Serial.print('/');
    Serial.print(now.day(), DEC);
    Serial.print(' ');
    Serial.print(now.hour(), DEC);
    Serial.print(':');
    Serial.print(now.minute(), DEC);
    Serial.print(':');
    Serial.print(now.second(), DEC);
    Serial.println();
   
    Serial.print(" since midnight 1/1/1970 = ");
    Serial.print(now.unixtime());
    Serial.print("s = ");
    Serial.print(now.unixtime() / 86400L);
    Serial.println("d");
   
    // calculate a date which is 7 days and 30 seconds into the future
    DateTime future (now.unixtime() + 7 * 86400L + 30);
   
    Serial.print(" now + 7d + 30s: ");
    Serial.print(future.year(), DEC);
    Serial.print('/');
    Serial.print(future.month(), DEC);
    Serial.print('/');
    Serial.print(future.day(), DEC);
    Serial.print(' ');
    Serial.print(future.hour(), DEC);
    Serial.print(':');
    Serial.print(future.minute(), DEC);
    Serial.print(':');
    Serial.print(future.second(), DEC);
    Serial.println();
   
    Serial.println();
    delay(3000);
}

Alla fine ti basterà fare qualche if però bisogna prima capire come l'orario viene stampato Ciao!
avatar
Poderak
♔ Amministratore

Messaggi Messaggi : 4190
Crediti Crediti : 11714
Reputazione Reputazione : 186
Data d'iscrizione Data d'iscrizione : 08.03.11
Età Età : 18
Località Località : Brescia

Vedi il profilo dell'utente http://www.wikiinfo.net

Tornare in alto Andare in basso

Vedere l'argomento precedente Vedere l'argomento seguente Tornare in alto


 
Permessi di questa sezione del forum:
Non puoi rispondere agli argomenti in questo forum