Vai al contenuto
PLC Forum


Programmazione Eventi Con Orario


Messaggi consigliati

Inserito:

ciao a tutti, confido anche questa volta di troovare qualche spunto interessante per

risolvere il mio problemino che è il seguente:

utilizzando una cpu 315 devo generare una serie di eventi seguendo un calendario

fissato dal cliente, esempio apro una valvola alle ore 15,30 e la chiudo alle 16,00.

non devo tenere conto della data ma solo dell'ora.

ho gia provato a sviluppare qualcosa per conto mio ma il risultato non sembra essere affidabile al 100%, e come al solito i tempi per il debug sono sempre molto limitati!!!!!

qualcuno è a conoscenza di blocchi tipo OB o simili che fanno gia un controllo simile?

grazie mille a tutti!!!!!!!!!!!


Gianmario Pedrani
Inserita:

Devi sfruttare il tempo che leggi in ob1, e' una variabile data-ora di 64 bit ogni byte contiene ore, minuti, secondi anni giorni mesi ecc comunque se fai un hel con step 7 hai tutte le informazioni, dopo di che prendendo i silgoli byte non la variabile intera puoi fare dei confronti ed attivare le tue valvole......

ciao spero di essere stato chiaro se cosi non fosse fammi sapere

Inserita:

grazie gianmarco, faccio gia una cosa simile leggendo l'orologio hardware della cpu, mi chiedevo in realta se esistono blocchi parametrizzati per assolvere a questo compito con una semplice introduzione degli orari di start e stop.

lo so che chiedo l'america, ma non si sa mai..........................!

grazie in ogni caso!!!

Inserita:

Mi sembra che nella 315 sia possibile usare OB10. Questo OB è pobbile parametrizzarlo a tuo piacere.

Se ti posso dare un consiglio sviluppati tu la funzione, in modo tale da porter modificare l'ora di avvio e la durata a tuo piacere. Al contrario usando l'OB sei l'imitato alla configurazione hardware.

Ciao

Inserita:
mi chiedevo in realta se esistono blocchi parametrizzati per assolvere a questo compito

Cerca nell'. del S7 manager "Blocchi FB/FC IEC 1131". Li trovi qualcosa che fa al caso tuo. Anchio penso che fai prima a farteli da te!

Ciao!

Inserita:

ciao christian924.

Non ci metterei la mano sul fuoco, ma mi sembra che non ci sia nessuna funzione già implementata da Siemens per questa tua esigenza.

Comunque, il tuo problema di facile soluzione:

prendi l'ora di sistema e convertila in secondi (o in minuti se la precisione di +/- min. ti basta), fai lo stesso con il dato impostato dal tuo Cliente (p.e. le 15:30 = 15*60 + 30 => min dalla mezzanotte; *60 = sec. dalla mezzanotte), poi esegui un normale confronto fra il tuo risultato e l'ora di sistema convertita.

E' un metodo molto semplice e sicuro (debug immediato).

Spero di essere stato chiaro.

ciao.

Gramma

Inserita:

IO USEREI SFC 1 "READ_CLK"

PER OTTENERE IL FORMATO DATA E ORA

IL RISULTATO LO CONVERTI CON

FC 8 "DT_TOD"

ADESSO HAI L'ORA DI SISTEMA IN UN FORMATO 32 BIT TOD

DOVE IN OGNI BYTE HAI ORE,MIN,SEC,MSEC

PRENDI I BYTE DELLA DWORD ORE E MINUTI E LI CONFRONTI CON L'ORA IMPOSTATA.

CIAO

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...