Vai al contenuto
PLC Forum


S7-300 E Acs350 - Come farli comunicare in Profibus?


Messaggi consigliati

Inserito:

Buongiorno a tutti e buon Natale,

devo gestire 9 inverter AC350 ABB in profibus con il modulo FPBA-01.

Ho installato correttamente i file GSD, ho iserito gli inverter nella configurazione ma quando devo inserire i "moduli" mi propone da PPO-01 a PPO-06 solo che nel manuale ABB viene spiegato solo il PPO-01 e il PPO-04.

Da quel poco che ho capito dal manuale ABB mi basterebbe il PPO-01 dove dovrei avere in scrittura la Word di Controllo e la velocità e in lettura la Word di Status e la velocità attuale.

Quello che non riesco a capire è se posso puntare direttamente agli indirizzi di periferia (PEW e PAW) o se devo utilizzare qualche FB o FC dedicato.


Matteo Montanari
Inserita:

Nelle nuove tipologie di CPU puoi anche leggere e scrivere direttamente i canali di ingressi ed uscite utilizzati (sempre che si trovino nel campo ammesso dalla CPU).

nel forum si è parlato di quest'argomento in varie discussioni (ad esempio qui)

nel caso che siano utilizzati indirizzi alti (esempio xB1000) devi ricorrere all'utilizzo di un FC dove leggi e scrivi il canale di ingressi ed uscite.

eventualmente puoi utilizzare un codice di questo tipo:

FUNCTION FC 222 : VOID
TITLE =PPO 4 Data Structure Read / Write for Profibus Inverter
{ S7_language := '16(1) Italiano (Italia)  14.12.2005  09:17:45' }
AUTHOR :Keos
NAME : INV_PPO4
VERSION : 0.1


VAR_INPUT
  PQAddress : INT;    
  DBNumber : INT;    
  DBAddress : INT;    
END_VAR
VAR_TEMP
  NumeroBloccoDati : WORD;    
END_VAR
BEGIN
NETWORK
TITLE =PPO 4 Data Structure Read / Write for Profibus Inverter

      L     #DBNumber; 
      T     #NumeroBloccoDati; 
//;
      AUF   DB [#NumeroBloccoDati]; 
//;
      L     #PQAddress; // Get HW Configuration Address
      SLD   3; // Compute PQAddress in Byte.Bit format
      LAR1 ; 
//;
      L     #DBAddress; 
      SLD   3; // Compute DBAddress in Byte.Bit format
      LAR2 ; 
//;
      L     PEW [AR1,P#0.0]; // Get SW From Drive
      T     DBW [AR2,P#20.0]; // Save Status Word 
//;
      L     PEW [AR1,P#2.0]; // Get ACT From Drive
      T     DBW [AR2,P#22.0]; // Save Actual Frequency 
//;
      L     PED [AR1,P#4.0]; // Get PDS 1-2 From Drive
      T     DBD [AR2,P#24.0]; // Save  
//;
      L     PED [AR1,P#8.0]; // Get PDS 3-4 From Drive
      T     DBD [AR2,P#28.0]; // Save  
//;
      L     DBW [AR2,P#0.0]; // Get Control Word 
      T     PAW [AR1,P#0.0]; // Write To Drive
//;
      L     DBW [AR2,P#2.0]; // Get Setpoint
      T     PAW [AR1,P#2.0]; // Write To Drive
//;
      L     DBD [AR2,P#4.0]; // Get PDM 1-2
      T     PAD [AR1,P#4.0]; // Write To Drive
//;
      L     DBD [AR2,P#8.0]; // Get PDM 3-4
      T     PAD [AR1,P#8.0]; // Write To Drive
END_FUNCTION

il codice è stato pensato per il protocollo PP0 4, per utilizzarlo con altri protocolli occorre aggiungere o togliere i canali non utilizzati

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