adb3s Inserito: 11 agosto 2005 Segnala Share Inserito: 11 agosto 2005 (modificato) Non sono un programmatore professionista, ma capita di fare qualche prg, anche abbastanza complesso.Normalmente uso l'S7-200, ma questa volta mi ritrovo a dover rifare il sw di una macchina con tre assi che hanno il controllo di velocità e di coppia equipaggiata con un 313C.Il sw attualmente in uso funziona, ma ha qualche problema secondario.Il mio problema (credo sia banale...ma non ne salto fuori) è che se comando l'uscita analogica (coppia e velocità) solo con il segmento 1 tutto funziona (avanti e indietro). Se voglio invertire il moto abilitando anche il segmento2 non funziona più e mi gira sempre in una direzione (quella dell' ultimo "L").Le righe seguenti chiariranno:segmento 1A "PULS_X1_PIUL 5000T "VEL_1"L 5000T "TRQ_1"S "AZION_1"segmento 2A "PULS_X1_MENO"L -5000T "VEL_1"L 5000T "TRQ_1"S "AZION_1"segmento 3AN "PULS_X1_PIU"AN "PULS_X1_MENO"R "AZION_1"Nel programma esistente vengono usate le stesse tecniche, a parte l'= al posto di set e reset, il DB al posto di costanti.Inoltre io richiamo la sub routine FC2 (che contiene i blocchi descritti) con CC mentre l'altro usa CALL.Nell' s-200 c'è la funzione "MOV".Nell' S-300 sono necessari "L" e "T" per fare la stessa cosa, giusto? chi mi aiuta vince il peluche di cemento... a parte gli scherzi, grazie in anticipo Modificato: 11 agosto 2005 da adb3s Link al commento Condividi su altri siti More sharing options...
Matteo Montanari Inserita: 11 agosto 2005 Segnala Share Inserita: 11 agosto 2005 (modificato) nel tuo caso, senza mettere nessuna condizione utilizzi sempre l'ultimo valore scritto nella variabile "VEL_1" che equivale a "-5000". devi comunicare al sistema di utilizzare il valore "5000" quando hai "PULS_X1_PIU" mentre quando hai "PULS_X1_MENO" deve utilizzare il valore "-5000".utilizza il linguaggio a contatti (KOP), prova a convertire i segmenti seguenti e capirai come realizzare il tutto.A "PULS_X1_PIUSPBNB _000L 5000T "VEL_1"_000: NOP 0segmento 2A "PULS_X1_MENO"SPBNB _001L -5000T "VEL_1"_001: NOP 0segmento 3A "PULS_X1_PIUO "PULS_X1_MENO"SPBNB _002L 5000T "TRQ_1"_002: NOP 0segmento 4A(A "PULS_X1_PIUO "PULS_X1_MENO")S "AZION_1"A(AN "PULS_X1_PIU"AN "PULS_X1_MENO")R "AZION_1"prova a settare il linguaggio in tedesco o italiano A -> U quasi nessuno utilizza il formato inglese/americanochi mi aiuta vince il peluche di cementopuoi tenerlo tu...Non sono un programmatore professionistanon è un problemama capita di fare qualche prg, anche abbastanza complessosi cresce ad ogni piccolo passo. Modificato: 11 agosto 2005 da keosmm Link al commento Condividi su altri siti More sharing options...
jake Inserita: 12 agosto 2005 Segnala Share Inserita: 12 agosto 2005 Ciao, L e T sono dei comandi assoluti , ovvero vengono eseguiti senza preoccuparsi della condizione che gli hai posto prima .Per questo motivo devi mettere dei salti a delle etichette, come i ha suggerito keosmm. Good Luck, Jake Link al commento Condividi su altri siti More sharing options...
zeddini Inserita: 12 agosto 2005 Segnala Share Inserita: 12 agosto 2005 caro matteo! anchè questa è una zappata... Link al commento Condividi su altri siti More sharing options...
Matteo Montanari Inserita: 12 agosto 2005 Segnala Share Inserita: 12 agosto 2005 caro matteo! anchè questa è una zappata...se è riferito a me, puoi evitarlo oppure speigare quello che vuoi dire Link al commento Condividi su altri siti More sharing options...
rddiego Inserita: 12 agosto 2005 Segnala Share Inserita: 12 agosto 2005 adb3s visto che non sei un programmatore esperto (e questo in ogni caso non conta nulla) ti suggerisco di programmare in KOP e poi tradurre tutto in AWL così da capire meglio come lavora S7. Se tu avessi scritto i tuoi tre segmenti in KOP non ci avresti "consultati" poichè i salti necessari per eseguire correttamente le tue istruzioni in AWL, vengono automaticamente generati in KOP il quale linguaggio sottintende già, nel solo "disegno", una sequenzialità delle istruzioni. Tu potrai seguirne il flusso molto chiaramente, quando ON-LINE, poichè si colora se l'istruzione viene eseguita o è semplicemente VERA.Mi viene in mente anche un'altra cosa: nota bene che è sempre l'ultima istruzione quella che effettivamente darà il risultato finale, quindi fai bene attenzione e usa con parsimonia le istruzioni SET e RESET che spesso possono creare inconvenienti se agiscono su uno stesso bit in più parti nel programma. Alla stessa maniera si può ritenere identica l'istruzione MOVE (SET/RESET di più bit).Consiglio sempre di scrivere, quanto più possibile, ciascun bit una volta sola in tutto il programma (anche solo per esercizio) utilizzando l'assegnazione "=" con relativa autoritenuta così da crearti da te le istruzioni S e R.In questo modo sarai più che certo che il determinato bit verrà scritto solo in un punto del programma con minime probabilità di errore (e debug molto veloce).Dal mio punto di vista ciò detto sopra non è una regola fissa, finchè si parla di bit in genere, ma deve essere praticamente obbligatorio per la gestione delle uscite. Link al commento Condividi su altri siti More sharing options...
pengluca Inserita: 8 agosto 2008 Segnala Share Inserita: 8 agosto 2008 E' un problema che mi sono posto stamattina mentre aspettavo il bus, guardando due pulsanti di due campanelli civili... (lo so la mattina assonnato faccio brutti pensieri)Ho 2 campanelli azionati dal loro rispettivo pulsante, se volessi , azionando un dispositivo (es. un deviatore o altro) che da quel momento suonino solo se si premono entrambe i pulsanti altrimenti niente , come potrei fare? Ho pensato ad un deviatore tra l'uscita del primo pulsante e l'ingresso del secondo , ma in quel caso il primo campanello suonerebbe comunque con il suo pulsante....La soluzione deve essere il piu' possible semplice operativamente (cioe' per l'operatore che deve fare il cambio as esempio la sera)Non mi prendete per matto ma mi e' sorto sto quesito stamattina e mi attanaglia. Link al commento Condividi su altri siti More sharing options...
do59 Inserita: 8 agosto 2008 Segnala Share Inserita: 8 agosto 2008 Boh! certamente mettendo in serie i due pulsanti normalmente aperti che comandano i campanelli se non si pigiano contemporaneamente i campanelli non suonano ma la soluzione mi sembra piuttosto facile per cui evidentemente non ho capito bene il quesito.Ciao Link al commento Condividi su altri siti More sharing options...
luciopro Inserita: 8 agosto 2008 Segnala Share Inserita: 8 agosto 2008 non dirmi che di notte ti suonano il campanello e non riesci a dormire......... :rolleyes: Bhe non un paio di rele ed un selettore fai tutto.....un po di interblocchi...ma non so se cerchi qualcosa di gi commerciale....ciao Link al commento Condividi su altri siti More sharing options...
do59 Inserita: 8 agosto 2008 Segnala Share Inserita: 8 agosto 2008 ora ho capito! Link al commento Condividi su altri siti More sharing options...
pengluca Inserita: 8 agosto 2008 Segnala Share Inserita: 8 agosto 2008 non dirmi che di notte ti suonano il campanello e non riesci a dormire......... No!!!... Mi e' venuto in mente stamattina sto problemino e mi ci stavo incartando... Della serie "tutti i riferimenti a fatti e persone e' puramente casuale"... Non e' un circuito che devo realizzare era solo un mio dubbio. Boh! certamente mettendo in serie i due pulsanti normalmente aperti che comandano i campanelli se non si pigiano contemporaneamente i campanelli non suonano ma la soluzione mi sembra piuttosto facile per cui evidentemente non ho capito bene il quesito.CiaoInfatti non e' cosi' semplice perche' normalmente ogni campanello dovrebbe funzionare con il solo proprio pulsante mentre nel momento in cui aziono il dispositivo da definire , i campanelli si azionano solo se premo entrambe i pulsanti Link al commento Condividi su altri siti More sharing options...
solchiere Inserita: 8 agosto 2008 Segnala Share Inserita: 8 agosto 2008 E' l'uovo di Colombo (non il tenente).Ecco lo schemino.... mi spiace averlo realizzato con Paint ma qui non ho altro installato. Gli interuttori dei campanelli sono in realtà pulsanti, ma il simbolo era complesso da realizzare con paint. Link al commento Condividi su altri siti More sharing options...
pengluca Inserita: 8 agosto 2008 Segnala Share Inserita: 8 agosto 2008 Grazie solchiere, ma il circuito e' piu' complesso: i campanelli sono 2 azionati normalmente da 2 pulsanti come di seguito Link al commento Condividi su altri siti More sharing options...
solchiere Inserita: 8 agosto 2008 Segnala Share Inserita: 8 agosto 2008 Non avevo capito cosa intendessi. Però mi sorge un dubbio "logico".... durante il comportamento normale suonano "normalmente", ma durante il funzionamento particolare suonano assieme (sarebbe impossibile che non lo facessero) ??? Secondo me non ha senso ! Link al commento Condividi su altri siti More sharing options...
pengluca Inserita: 8 agosto 2008 Segnala Share Inserita: 8 agosto 2008 Si suonano insieme, praticamente premendo uno dei due pulsanti non succede nulla , premendoli insieme suonano entrambe i campanelli.Se mi ritenete matto non assecondatemi!!! Link al commento Condividi su altri siti More sharing options...
cobrak Inserita: 8 agosto 2008 Segnala Share Inserita: 8 agosto 2008 Pare a me o così può funzionare?A parte le posizioni sul disegno, ho inserito un invertitore e in deviatore "accoppiati", nel senso che DEVONO muoversi insieme.Tipo un copritasto doppio con sotto inv e dev affiancati.Se vanno ognuno per conto loro non rispondo delle conseguenze... c'è da girare un po' coi fili, però...PS: nell'immagine è tutta fase, il neutro non l'ho messo per niente.http://img401.imageshack.us/my.php?image=invdevqh8.jpg Link al commento Condividi su altri siti More sharing options...
pengluca Inserita: 11 agosto 2008 Segnala Share Inserita: 11 agosto 2008 Grande Cobrak!! Link al commento Condividi su altri siti More sharing options...
Messaggi consigliati
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 accountAccedi
Hai già un account? Accedi qui.
Accedi ora