Vai al contenuto
PLC Forum


Memorizzazione Di Ingressi


Messaggi consigliati

Inserito:

Ciao a tutti.

Con un S7300 devo memorizzare la situazione di una serie di ingressi in una DB. Ad ogni mio comando di un pulsante deve memorizzare la situazione alla word successiva della stessa DB. Alla fine dovrei avere un blocco dati con tante dataword che mi danno le situazioni degli ingressi negli istanti in cui io ho dato l’ingresso di comando. Come posso fare? :( Non sono pratico abbastanza. :unsure: Chi mi può aiutare ? :lol::lol: GRAZIE :D


Matteo Montanari
Inserita:

puoi utilizzare un puntatore, ed incrementarlo ad ogni pressione del pulsante.

devi realizzare il fonte del pulsante per non andare a scrivere più volte gli stessi dati.

poi dipende da quante word devi creare.

nella sezione didattica del sito c'é uno scritto sull'utilizzo dei puntatori.

nei manuali in linea ci sono vari esepi sull'utilizzo dei puntatori.

prova a guardare anche nei vari files di esempio nelle cartelle up/download

Inserita:

;)

es:

ad ogni fronte di salita sul pulsante :

carica w9, trasferisci in *** (l'azienda ha richiesto la rimozione di questo marchio su PLC Forum)

carica w8, trasferisci in w9

carica w7, trasferisci in w8

carica w6, trasferisci in w7

carica w5, trasferisci in w6

........................................

carica w0 trasferisci in w1

carica w ingressi XX trasferisci in w0

in questo caso n° 11 memorizzazioni, aumenta le word x avere + memorizzazioni.

ultima pressione del pulsante, stato ingressi in w0,

prima pressione del pulsante, stato ingressi in word di valore alto.

ciao.

Inserita:

Caro ireandi guarda che in questo modo vai a sovrapporre i byte

devi caricare w8 e trasferirla in *** (l'azienda ha richiesto la rimozione di questo marchio su PLC Forum) e così via altrimenti sporchi i dati

  • 3 weeks later...
Inserita:

Non conosco siemens ma consiglio uno shift di dati:

scrivo la word,

scrivo la seconda dopo aver schiftato

in questo modo scrivo sempre sulla stessa word e mi creo una colonna dove l'ultimo dato è il piu vicino all'indirizzo dove scrivo e il primo è il più lontano.

Credo sia più semplice e il limite è solo la quantità di word a disposizione.

Buon lavoro.

Paolo Cattani
Inserita:
dopo aver schiftato

... deve fare un male cane... :D

Matteo Montanari
Inserita: (modificato)

... deve fare un male cane...

mai quanto essere "puntato", "caricato" e "trasferito", quelle si che sono cose che ti "modificano" per sempre

Saluti Paolo

Modificato: da keosmm
Inserita:

Ciao e grazie a tutti.Sono appena tornato dalle ferie :lol: e ho letto i vostri aiuti. ora mi devo mettere a "studiare". :angry: Non è che qualcuno può scrivermi il programma in poche righe? :unsure: io so che ci metto una eternità! chiedo troppo ? grazie a tutti comunque :D:D

Matteo Montanari
Inserita:
Non è che qualcuno può scrivermi il programma in poche righe?

certo, l'ultima volta penso che il costo era di 5€ ogni messaggio, da inviare sul conto di PLC Forum. quando posti la copia del versamento, arriva la soluzione.

hai vari suggerimenti su cui lavorare, prova a spremerti un po' le meningi, visto che sei tornato fresco fresco dalle ferie non dovrebbe essere troppo difficile.

io so che ci metto una eternità!

con il tempo e l'esperienza diventi più veloce

Inserita:
certo, l'ultima volta penso che il costo era di 5€ ogni messaggio, da inviare sul conto di PLC Forum. quando posti la copia del versamento, arriva la soluzione. hai vari suggerimenti su cui lavorare, prova a spremerti un po' le meningi, visto che sei tornato fresco fresco dalle ferie non dovrebbe essere troppo difficile

Ben detto!

Inserita:

E' giusto quello che dite :lol: ,

ma io ci ho provato :rolleyes:

adesso mi metto a leggere e a studiare.

chissa che prima o poi faccia qualcosa di buono.

Grazie B)

Inserita: (modificato)
QUOTE

QUOTE

dopo aver schiftato

... deve fare un male cane...

mai quanto essere "puntato", "caricato" e "trasferito", quelle si che sono cose che ti "modificano" per sempre

Scusate non credevo di essere così pericoloso, per distrazione rischio di compromettere la Vostra salute, però siete un pochino delicati non caricatemi di tanta responsabilità, Vi prego ditemi che siete sopravvissuti a questo trauma!!!

Spero, malgrado l'orribile parola "shiftato", di aver dato un consiglio costruttivo, tecnicamente scrivendo, in caso contrario accetterei volentieri consigli per cambiare idea.

Ciao

Modificato: da albertom
Paolo Cattani
Inserita: (modificato)

Beh, "shiftato" potevo ancora sopportarlo, ma sChiftato è troppo anche per me... :)

Modificato: da Paolo Cattani
Inserita:

Ripeto, si tratta di una mia distrazione, ma per fortuna Ti sei salvato, a volte la fretta non ti consente di correggere opportunamente il tuo scritto.

Rientrando nel merito della discussione ritieni il mio consiglio meno complicato oppure un' inutile perdita di tempo?

ciao

Paolo Cattani
Inserita:

Non sono certo il maggiore esperto di plc, ma la tua soluzione mi sembra più ragionevole, a patto che in siemens non si ottenga un minore impegno in tempo o in memoria usando i puntatori.

Inserita:

Può essere, e dato che non conosco siemens chiedevo chiarimenti.

Ciao

Inserita: (modificato)

Se per shiftare intendi che elimini il dato vecchio, fai scorrere tutti gli altri dati e scrivi il nuovo dato sempre nella stessa posizione sono d’accordo con te che è il metodo migliore e soprattutto il più leggibile in quanto le posizioni dei dati sono predefinite. Penso che sia anche il metodo più usato nei PLC dove di solito si lavora con aree dati medio-piccole. Se invece l’area dati è grande ci sono altri metodi più convenienti da usare.

CIAo

Modificato: da beppeconti
Gianmario Pedrani
Inserita:

Io utilizzerei i puntatori, anzi mi costruirei una funzione dove gli posso passare il numero del db ed il numero di memorizzazioni..

Con i puntatori te la cavi un 5 o 6 istruzioni, l'unico problema e quello di stare molto attenti a non superare le dimensioni della db altrimenti la cpu va in blocco....

ciaooooooooooooo

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...