Search the Community
Showing results for tags 'Twincat2'.
Found 2 results
ravi.joshi53 posted a topic in Other PLCsHi, We have Beckhoff CPU module CX1020-0113 and two Beckhoff AC servo drives conneted using EL7201 card. I want to run both of the motors simultaneously using TwinCAT 2 PLC Control. Since I want to control the position, so I am using MC_AbsolutePosition function block. The sinusoidal trajectory can be taken as 60*SIN(w*t) /*here t is time. w is angular frequency which is constant*/Below is the snippet from PLC program - Please see below image for System Manager Info - Can somebody tell me how to provide sinusoidal trajectory as position? Please note that both the motors must run simultaneously. - Thanks Ravi
ravi.joshi53 posted a topic in Other PLCsHi, I am calculating velocity and acceleration from position inside TwinCAT PLC Control V2. All these equations have only one variable which is time. Below is the PLC code- (* We are using the external set point generator functionality *)NewPosition := theta_max*COS(omega*t); (* t is time in second *)NewVelocity := -theta_max*omega*SIN(omega*t);NewAcceleration := -omega*omega*theta_max*COS(omega*t);IF NewVelocity=0 AND NewAcceleration=0 THEN NewDirection := 0; (* stand still *)ELSIF NewVelocity >= 0 THEN NewDirection := 1; (* positive motion *)ELSE NewDirection := -1; (* negative motion *)END_IFt:=t+0.01; (* The task is called at every 10 ms = 0.01sec *)(* feed the dynamic data into the external setpoint generator interface of axis *)MC_ExtSetPointGenFeed( Position := NewPosition, Velocity := NewVelocity, Acceleration := NewAcceleration, Direction := NewDirection, Axis := Joint_2);-------------------------------------------------------------(* Below parameters are defined in Global Variables file *)VAR_GLOBAL CONSTANT theta_max: INT := 60; (* in degree *) omega: REAL := 0.62; (* 2PI/Time Period=10sec *)END_VARThe MATLAB simulation of the above equations gives me following results- But this does not work in real Beckhoff motor. Please suggest.