Bonfiglioli VFD with Profinet

nightline

Member
Join Date
Feb 2010
Location
Prinsenbeek
Posts
425
Gents,

I'm asked to control some Bonfiglioli VFD's with a Siemens PLC over Profinet.
Can somebody explain how I do this or have an example?
The manual of the CM-Profinet module is very unclear to me...
The VFD's are Bonfiglioli Vectron drives which are linked to each other by the serial bus.
Plan is to add a CM-Profinet card to the master vfd.
 
If it uses the PROFIDrive profile, it's pretty straight forward.
Let's say you use a Standard Telegram 20 (2/6 words) and your I/O area of your GSDML is set to %I256 and %Q256.
Your statusword will be %IW256 and your commandword will be %QW256.
Speed feedback will be %IW258 and Speed setpoint will be %QW258.

Again, if it follows PROFIDrive, then you can look at the Siemens manual which might be easier to read.
 
Did you import the drive gsd into Portal yet?
What Siemens plc and what software are you using?

I'm using Tia Portal V15 with a 1214C CPU.
The GSD file is installed.
The user has to configure the interface with 1 PKW object and an amount of PZD objects with a max. of 12.

So I've now 1 PKW object and 3 PZD objects.
 
Start with a standard telegram and just get it to move and provide feedback. Then you can use a Free telegram 999 and expand as needed.

Well, I'm just writing the PLC code. The comunication adapter is ordered, but not yet in.

I've worked mostly with Allen Bradley in the past, and some things with SEW drives which worked all a lot easier.
 
Don’t get bogged down on the PKW data. Concentrate on the PZD
Study the status and control words on page 28
Looks like that is in blocks of 4 bytes
 
Hint: You can use Peek and Poke to read/write directly to the I/O area.
Something like this:
Code:
#PN_StatusWord := 
         PEEK_WORD(area := 16#81,
         byteOffset := (256 + 0),
         dbNumber := 0);
#PN_SpeedPV :=
         PEEK_WORD(area := 16#81,
         byteOffset := (256 + 2),
         dbNumber := 0);
Code:
POKE(area := 16#82,
         byteOffset := (256 + 0),
         dbNumber := 0,
         value := #PN_ControlWord);
POKE(area := 16#82,
         byteOffset := (256 + 2),
         dbNumber := 0,
         value := #PN_SpeedSP);
 
Hint: You can use Peek and Poke to read/write directly to the I/O area.
Something like this:
Code:
#PN_StatusWord := 
         PEEK_WORD(area := 16#81,
         byteOffset := (256 + 0),
         dbNumber := 0);
#PN_SpeedPV :=
         PEEK_WORD(area := 16#81,
         byteOffset := (256 + 2),
         dbNumber := 0);
Code:
POKE(area := 16#82,
         byteOffset := (256 + 0),
         dbNumber := 0,
         value := #PN_ControlWord);
POKE(area := 16#82,
         byteOffset := (256 + 2),
         dbNumber := 0,
         value := #PN_SpeedSP);

PEEK & POKE .... never heard off, but will search for it.
 

Similar Topics

Hello All , I have a problem with drive ( Bonfiglioli AGL 402-11 1 FA ). I need to upload a backup from it , I use vectron Inverter Manager...
Replies
3
Views
2,387
Hello, first of all let me state for the record that I'm not a tech of any kind, I have limited experience with industrial automation devices, so...
Replies
3
Views
110
Sorry in advance for the long post, but this requires a little back story. I work in a facility with a couple hundred VFDs Most are in a web...
Replies
14
Views
246
Customer want to use contactor for their 5HP motor blower application. im leaning to VFD. anyone use contractor for blower application...
Replies
9
Views
215
Hi, I would like to assemble a simulator/practice booster pump system that uses PID to maintain steady water pressure under various outlet demands...
Replies
0
Views
89
Back
Top Bottom