mario2159 Inserito: 28 ottobre 2009 Segnala Inserito: 28 ottobre 2009 Salve a tutti!Sono alle prime armi con fm353 e gli azionamenti.Ho acquistato una fm353 come scheda di controllo e un azionamento (non siemens).Ora fm utilizza un cavo 15 pin per la comunicazione con stepdrive e devo adattarlo con il mio azionamento.Utilizzo il pin per lo step+, il pin dir+, collegati direttamente sull azionamento, devo mettere anche le varie masse del cavo a comune con l alimentazione dell azionamento??Qualcuno sa dove posso scaricare un manuale con esempi per la programmazione dell fm???Grazie mille.
pigroplc Inserita: 28 ottobre 2009 Segnala Inserita: 28 ottobre 2009 guarda qui:http://support.automation.siemens.com/WW/s...=1&view=newper quanto riguarda i segnali devi avere la velocità in frequenza degli impulsi e la direzione, poi in funzione dell'azionamento avrai anche il segnale di zero.Cosa metti, RTA?pigroplc
mario2159 Inserita: 29 ottobre 2009 Autore Segnala Inserita: 29 ottobre 2009 Salve Pigroplc,L azionamento non e' RTA , comunque nello specifico mi interessa sapere quali pin devo collegare dei 15 ho notato che su 3 pin ho gnd la mia domanda e se devo collegarli a comune con l alimentazione dell azionamento.Grazie per la risposta.
pigroplc Inserita: 29 ottobre 2009 Segnala Inserita: 29 ottobre 2009 si, servono come riferimento ai segnali.pigroplc
mario2159 Inserita: 31 ottobre 2009 Autore Segnala Inserita: 31 ottobre 2009 Un ultima domanda..Sai dove posso scaricare il progetto esempio della siemens per l utilizzo di FM353??Grazie,
pigroplc Inserita: 1 novembre 2009 Segnala Inserita: 1 novembre 2009 qui scarichi il pacchetto (se non disponi già della scheda e relativo CD):https://support.automation.siemens.com/WW/l...2Easp%3Ftab%3D2dovrebbe quindi installarsi anche il progetto "FMSTSV_L" nelle biblioteche che contiene i blocchi di interfaccia, quindi con la documentazione di quei blocchi ti crei il tuo applicativose chiedi al tuo rivenditore siemens potrebbe forse farti avere qualche esempio fatto dai tecnici di laboratorio, mi sembra che all'epoca mi sia messo io a fare il software di sana pianta senza l'esempio pre-costruito.pigroplc
mario2159 Inserita: 7 novembre 2009 Autore Segnala Inserita: 7 novembre 2009 Ciao sono sempre io questa e' la prima di molte domandeallora sul pin 1 del cavo ho lo step+ collegato su step+ dell azionamentosul pin 2 ho la dir+ collegato su dir+ dell azionamentodiciamo che per ora mi interessa camminare e scegliere la direzioneho 3-4 zeri sui pin del cavo li ho saldati tutti ponticellandoli a comune con l alimentazione dell azionamento.i blocchi per l utilizzo di fm sono 4:fc0 inizializzazionefc1 controllofc2 letturafc3 gestione erroriA me essendo alle prime armi interessa solo camminare senza tutte le molteplici operazioni che ho a disposizione.domanda 1fc0 deve essere richiamata in obX ogni qualvolta devo entrare in comunicazione cn fm??dall esempio siemens fc0 e legata ad un db che gia contiene nel suo interno le aree di memoria di fm nella quale vado a scrivere parametri.correggimi se sbaglio..domanda 2 fc1 deve essere richiamata in obX ogni qualvolta devo entrare in comunicazione cn fm??dall esempio siemens fc1 e legata ad un db che gia contiene nel suo interno le aree di memoria di fm nella quale vado a scrivere parametri.correggimi se sbaglio..dunque a me per far camminare il motore occorrerebbe solo fc1 e fc0 giusto?? quali sono i parametri che consentono l avviamento???dall esempio siemens in fc0 c'e' la modalita' di avanzamentoin fc1 puo scegliere lo start lo step+ eccma provando a pilotarlo tramite tabella delle variabili non riesco a pilotarlo...ùdunque o sbaglio sul cavetto ho non setto qualche parametro in fc1 che mi fa camminare.........In attesa di una tua preziosissima risposta ti ringrazio Anticipatamente.
pigroplc Inserita: 8 novembre 2009 Segnala Inserita: 8 novembre 2009 in ob100 lanci fc0: CALL FC 0 DB_NO :=3 // DB number CH_NO :=1 // Axis nubmer LADDR :=256 // FM Address RET_VAL:=MW200 // Return value in ob82 lanci fc2: L #OB82_MDL_ADDR L "AW_DB_Achse_01".MOD_ADR ==I // is it the same FM addresse ? SPBN END1 SET S M 202.0 // Readout positive edge R M 202.1 // Error flag reset CALL "POS_DIAG" // FC diagnostic readout DB_NO :=3 RET_VAL:=MW200 IN_DIAG:=M202.0 L MW 200 // Error value L B#16#0 ==I R M 202.1 // Error flag reset SPB END1 S M 202.1 // Error flag set END1: NOP 0 in ob1 oppure in un blocco che gira sempre lanci fc1: CALL FC 1 DB_NO :=3 // DBnummer RET_VAL:=#return // Return Valuepoi giochi con i bit della db3.....pigroplc
mario2159 Inserita: 8 novembre 2009 Autore Segnala Inserita: 8 novembre 2009 Sai dove posso trovare delucidazioni su tutti i bit della db?Per capire tutti parametri che ho a disposizione.Non vorrei abusare della tua pazienza...Grazie mille.
pigroplc Inserita: 10 novembre 2009 Segnala Inserita: 10 novembre 2009 Quando si crea la DB dal progetto dovrebbe crearsi anche la DB con i relativi significati dei singoli bit, senza contare delle spiegazioni del manuale.in allegato trovi anche il pdfpigroplc
mario2159 Inserita: 11 novembre 2009 Autore Segnala Inserita: 11 novembre 2009 Allora per tagliare la testa al toro ho caricato l esempio siemens sul controllore.E sono andato sulle VAT per pilotare l fm dove ho a disposizione il Bit "dbex".go_p per il comando positivo in uscita sul pin 1 dell FMfacendo la prova con il tester dovrei avere 5v "correggimi se sbaglio" invece non ho nulla sull uscita dunqueper l avvio ci sono altri bit che devono essere settati??esempio ho visto che sull ultimo pin c'e' il "pronto" ; va chiuso ho dovrebbe partire indipendentemente da questo??
pigroplc Inserita: 11 novembre 2009 Segnala Inserita: 11 novembre 2009 copiati questo sorgente che crea una FC parametrizzata fatto all'epoca per la FM453 e funzionante anche per quello che serve a te:FUNCTION FC 18 : VOID TITLE =MAIN BLOCK FM_453 Release 2.1 //KNOW_HOW_PROTECT //Interfaccia realizzata con ANWENDER_DB come da release 2.0 del pacchetto di //progettazione FM453 release 23.11.00 RF // //Aggiunta la gestione OVERRIDE fisso in manuale 18.04.02 RF AUTHOR : PIGROPLC VERSION : 0.1 VAR_INPUT MANUALE : BOOL; //Selettore manuale AUTOMATICO : BOOL; //Selettore automatico SINCRONIZZAZIONE : BOOL; //Selettore sincronizzazione START : BOOL; //Start asse STOP_NOTAUS : BOOL; //Stop axis STOP_HYDRAULIKAGGREGAT : BOOL; //Stop Hydraulic unit RESET : BOOL; //Reset errori asse JOG_AVANTI : BOOL; //Comando manuale + JOG_INDIETRO : BOOL; //Comando manuale - ENABLE_ON : BOOL; //Abilitazione Simodrive SYNCRO_POS : BOOL; //Comando sincronizzazione OK_DRIVER : BOOL; //Simodrive OK ALL_STATION : BOOL; //Stazione in allarme EXTRA_POS : BOOL; //Extracorsa + EXTRA_NEG : BOOL; //Extracorsa - OVERRIDE : BYTE; //Override AW_DB : BLOCK_DB; //Numero della DB_WF END_VAR VAR_IN_OUT PEH : BOOL; //Asse in posizione AXIS_STOPPED : BOOL; //Asse fermo FEHL : BOOL; //Asse in errore SYNC : BOOL; //Asse sincronizzato POSITION_REACHED : BOOL; //Posizione raggiunta con funzione M END_VAR VAR_TEMP Kanalnummer : WORD; Anwender_DB : WORD; fehlercode : WORD; END_VAR BEGIN NETWORK TITLE =SWITCHING AXIS MODE //Switch axis mode, during switching cycle, axis is forced to stop. AUF #AW_DB; L DBB 24; // Active operating mode L 1; <>I ; U #MANUALE; // manual selection UN #AUTOMATICO; UN #SINCRONIZZAZIONE; UN DBX 25.2; // Axis negative travel UN DBX 25.3; // Axis positive travel SPB HAND; // L DBB 24; // Active operating mode L 3; <>I ; UN #MANUALE; // and syncro selection UN #AUTOMATICO; U #SINCRONIZZAZIONE; UN DBX 25.2; // Axis negative travel UN DBX 25.3; // Axis positive travel SPB REFE; // L DBB 24; // Active operating mode L 6; <>I ; UN #MANUALE; // and auto selection U #AUTOMATICO; UN #SINCRONIZZAZIONE; U DBX 25.0; // already syncronized UN DBX 25.2; // Axis negative travel UN DBX 25.3; // Axis positive travel SPB AUT; // Cycling with the right switching L DBB 24; // Active operating mode L 1; ==I ; U #MANUALE; // manual selection UN #AUTOMATICO; UN #SINCRONIZZAZIONE; SPB RUN; // L DBB 24; // Active operating mode L 3; ==I ; UN #MANUALE; // and syncro selection UN #AUTOMATICO; U #SINCRONIZZAZIONE; SPB RUN; // L DBB 24; // Active operating mode L 6; ==I ; UN #MANUALE; // and auto selection U #AUTOMATICO; UN #SINCRONIZZAZIONE; SPB RUN; O DBX 25.2; // Axis negative travel O DBX 25.3; // Axis positive travel = DBX 15.1; // Axis stop SET ; R DBX 15.3; // Positive direction R DBX 15.2; // Negative direction // GOTO end if there isn't the right feedback from FM module SPA COMM; // stop & waiting for axis right mode HAND: L 1; T DBB 16; // Operating mode T DBB 17; // Operating mode parameters SPA COMM; // stop & waiting for axis right mode REFE: L 3; T DBB 16; // Operating mode SPA COMM; // stop & waiting for axis right mode AUT: L 6; T DBB 16; // Operating mode SPA COMM; // stop & waiting for axis right mode NETWORK TITLE =INTERFACE ALWAIS RUNNING //This interface is alwais running not depending on WF mode. //In this side take place override and program number and so on RUN: L #OVERRIDE; U #AUTOMATICO; SPB TDBB; L 100; TDBB: T DBB 18; // override 0 - 100 % U #OK_DRIVER; = DBX 15.7; // drive enable U #ENABLE_ON; = DBX 34.0; // Controller enable // L DBW 42; L 0; <>I ; SPB NEWV; L 2#11111111111000; T DBW 42; S DBX 38.0; // and set speed strobe NEWV: NOP 0; // U #START; UN DBX 38.3; // START MDI BLOCK TRANSFER UN DBX 48.3; // FEEDBACK MDI BLOCK TRANSFER S DBX 38.3; // START MDI BLOCK TRANSFER U DBX 48.3; // FEEDBACK MDI BLOCK TRANSFER UN #START; R DBX 48.3; // FEEDBACK MDI BLOCK TRANSFER // NETWORK TITLE =MANUAL MODE SELECTION //If manual is switched on, then this side is working .... U #MANUALE; SPB MANU; SPA SINC; MANU: O DBX 25.3; // Positive travel O DBX 23.0; // enable to start U DBX 22.7; // FM parametrized U #STOP_NOTAUS; // Not stop axis U #JOG_AVANTI; UN #JOG_INDIETRO; U #EXTRA_POS; // not extra jog tripped U #OK_DRIVER; // Simodrive ready to move U DBX 15.7; // Controller enable UN DBX 22.3; // Operator / Traversing error UN DBX 22.4; // Data error U #STOP_HYDRAULIKAGGREGAT; // Hydraulik unit ON U DBX 48.0; // IF checkback speed level ON UN DBX 38.0; // and set speed strobe OFF = DBX 15.3; // Positive direction // O DBX 25.2; // Negative travel O DBX 23.0; // enable to start U DBX 22.7; // FM parametrized U #STOP_NOTAUS; // Not stop axis U #JOG_INDIETRO; UN #JOG_AVANTI; U #EXTRA_NEG; // not extra jog tripped U #OK_DRIVER; // Simodrive ready to move U DBX 15.7; // Controller enable UN DBX 22.3; // Operator / Traversing error UN DBX 22.4; // Data error U #STOP_HYDRAULIKAGGREGAT; // Hydraulik unit ON U DBX 48.0; // IF checkback speed level ON UN DBX 38.0; // and set speed strobe OFF = DBX 15.2; // Negative direction // U DBX 15.1; // Axis stop R DBX 15.1; // Axis stop // UN DBX 48.0; // IF not checkback speed level UN DBX 38.6; // Bezungspunkt setzen UN DBX 38.7; S DBX 38.0; // THEN set speed strobe SPA COMM; // GO TO WF UPDATE NETWORK TITLE =HOMING MODE SELECTION //If homing is switched on, then this side is working .... SINC: U #SINCRONIZZAZIONE; SPB SYNC; SPA AUTO; SYNC: O DBX 23.0; // enable to start O DBX 15.0; // syncronization U #SYNCRO_POS; // start sincro UN DBX 25.0; // already syncronized UN DBX 22.3; // Operator / Traversing error UN DBX 22.4; // Data error U DBX 22.7; // FM parametrized UN DBX 37.5; // Not reset asse in corso U #STOP_NOTAUS; // Not stop axis UN #ALL_STATION; // the station is free of alarms U #OK_DRIVER; // Simodrive ready to move U DBX 15.7; // Controller enable U #EXTRA_POS; U #EXTRA_NEG; U #STOP_HYDRAULIKAGGREGAT; // Hydraulik unit ON = DBX 15.0; // syncronization // Stop axis ON #EXTRA_POS; ON #EXTRA_NEG; ON #STOP_NOTAUS; // Not stop axis ON #STOP_HYDRAULIKAGGREGAT; // Hydraulik unit ON = DBX 15.1; // Axis stop SPA COMM; // GO TO WF UPDATE NETWORK TITLE =AUTOMATIC MODE SELECTION //If automatic is switched on, then this side is working .... //MDI function mode is working // MDI BLOCK SYNTAX COMPOSE AUTO: L 2#10001; // Position und G funktion T DBB 178; L 2#11; // M funktion und geschwindigkeit T DBB 179; L 91; // G91 funktion T DBB 180; L 0; // Keine G2 gruppe T DBB 181; L 1; // M funktion value T DBB 192; L 0; // Keine M2 und M3 funktion T DBB 193; T DBB 194; U #AUTOMATICO; SPB AUBE; SPA COMM; AUBE: O DBX 23.0; // enable to start O DBX 15.0; // enable START U #START; UN #POSITION_REACHED; UN #ALL_STATION; // the station is free of alarms U #OK_DRIVER; // Simodrive ready to move U DBX 15.7; // Controller enable U #EXTRA_POS; U #EXTRA_NEG; U #STOP_NOTAUS; // Not stop axis UN DBX 38.3; // START MDI BLOCK TRANSFER U DBX 22.7; // FM parametrized U DBX 25.0; // syncronized UN DBX 22.3; // Operator / Traversing error UN DBX 22.4; // Data error UN DBX 27.4; // NOT strobe M function UN DBX 15.4; // not ACK M function U #STOP_HYDRAULIKAGGREGAT; // Hydraulik unit ON = DBX 15.0; // enable START // Stop axis ON #EXTRA_POS; ON #EXTRA_NEG; ON #START; ON #STOP_HYDRAULIKAGGREGAT; // Hydraulik unit ON = DBX 15.1; // Axis stop // Axis reached position UN #POSITION_REACHED; U DBX 27.4; // M function ON S DBX 15.4; // set ACK for M function S #POSITION_REACHED; // set for application software // U DBX 15.4; // reset ACK when WF reset his UN DBX 27.4; // strobe for M function R DBX 15.4; NETWORK TITLE =Kanalpruefung mit geberfehler // Kanalnummer COMM: L DBW 2; T #Kanalnummer; L 1; ==I ; SPB EIN; L #Kanalnummer; L 2; ==I ; SPB ZWEI; L #Kanalnummer; L 3; ==I ; SPB TREI; SPA salt; EIN: L DBB 78; T #fehlercode; SPA salt; ZWEI: L DBNO; L 1; -I ; T #Anwender_DB; AUF DB [#Anwender_DB]; L DBB 80; T #fehlercode; SPA salt; TREI: L DBNO; L 2; -I ; T #Anwender_DB; AUF DB [#Anwender_DB]; L DBB 82; T #fehlercode; salt: NOP 0; NETWORK TITLE =UPDATE FM COMMAND AUF #AW_DB; U DBX 25.7; // position reached = #PEH; // UN DBX 25.2; // + UN DBX 25.3; // - O DBX 23.0; // axis stopped = #AXIS_STOPPED; // L DBW 86; // Error code active for this axis L DBW 90; +I ; L DBW 94; +I ; L #fehlercode; +I ; L 0; <>I ; O DBX 22.3; // Operator / Traversing error O DBX 22.4; // Data error = #FEHL; // Fehlermeldung // U DBX 25.0; // axis syncronized = #SYNC; // axis syncronized // U #RESET; U DBX 22.3; // Operator / Traversing error UN DBX 22.4; // Data error = DBX 14.3; // Alarm Acknoledge UN #STOP_HYDRAULIKAGGREGAT; // Hydraulik unit OFF U #SYNC; // axis syncronized O ; U #RESET; // or hard reset required !!! UN DBX 22.3; // Operator / Traversing error U( ; L #fehlercode; L 0; <>I ; O ; U DBX 22.4; // Data error ) ; S DBX 37.5; // Channel initialization (hard reset) NETWORK TITLE =Error reset L DBW 86; // Error code active for this axis L DBW 90; +I ; L DBW 94; +I ; L #fehlercode; +I ; L 0; <>I ; UN DBX 22.3; // Operator / Traversing error UN DBX 22.4; // Data error UN #RESET; UN DBX 37.5; // Channel initialization (hard reset) SPB RUEC; SPA ENDE; RUEC: L 0; T DBW 86; // Error code active for this axis T DBW 90; T DBW 94; ENDE: NOP 0; END_FUNCTIONpiù di così .... te la devo mettere in funzione io!pigroplc
pigroplc Inserita: 11 novembre 2009 Segnala Inserita: 11 novembre 2009 ah, mi dimenticavo,se lo usi ti chiedo l'accortezza di lasciare il nome di chi l'ha fatto......pigroplc
mario2159 Inserita: 11 novembre 2009 Autore Segnala Inserita: 11 novembre 2009 ti ringrazio lo provero' subito.a me serve per scopo didattico ma se verra' utilizzato risultera sicuramente il tuo nome.Grazie mille..
mario2159 Inserita: 11 novembre 2009 Autore Segnala Inserita: 11 novembre 2009 premetto che ti ringrazio per la tua pazienza...Ho un errore di compilazione.....?
pigroplc Inserita: 12 novembre 2009 Segnala Inserita: 12 novembre 2009 a me serve per scopo didattico ma se verra' utilizzato risultera sicuramente il tuo nome..... a scopo didattico ???? Allora studiati tutto il manuale e impara!per quanto riguarda il codice sorgente ti crei un altro sorgente e gli metti quello che ti ho postato, altrimenti a mano ti riscrivi il codice (c'è sempre il copia-incolla).Scusa, ma la frase dello scopo didattico me li ha fatti girare.pigroplc
mario2159 Inserita: 12 novembre 2009 Autore Segnala Inserita: 12 novembre 2009 non volevo offenderti comunque ti ringrazio lo stesso.e che leggendo il manuale non e' che sia molto chiaro..GRAZIE e scusa se ti ho fatto perdere tempo.
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