Sign in to follow this  
Followers 0
Guest Dashengjia

Question about DSM.

7 posts in this topic

I want to get the position information from the DSM302 when it control motion. Could anyone tell me how to get it and what type is that?

Share this post


Link to post
Share on other sites
When you configure the DSM302, you define a %AI address. This address is the first of at least 40 and as many as 64 words of data returned from the module to the CPU. If you configure the starting address as %AI0001, then the actual position of axis 1 will be a 32-bit integer at %AI0009, %AI0010. This is all covered in the manual GFK-1464. If you don't have the manual, you can download it from the website. http://www.geindustrial.com/cwc/gefanuc/su...Solutions-m.htm

Share this post


Link to post
Share on other sites
Thanks, Steve. I already read the manual, but there are still something I cannot understand: 1. If I control two axes in follower and use analog control, the two axes work according to the same profile use the same velocity and acceleration, they both move the same distance at the direction. Could I just use the program0 to realize this and how? 2. I don’t want to use a external master encoder, so if I choose the selection ENC3/INT, how can I set two axes use internal master? 3. My design has no home switch, I want to know should I just use the Z pulse to set home position and if I want set the home position at maybe 1000counts away from the Z, how can I realize?

Share this post


Link to post
Share on other sites
I interpret your first question as 'Can I use program 0 to achieve the same thing as follower mode'? You could try setting up axis 1 to follow axis 2 and writing a program 0 to control axis 1. Remember, program 0 is limited to 20 instructions. With two axes, you'll use up those instructions quickly. There is motion programmer add-on for Logicmaster software that lets you create program 1 through program 10 and download them to the module. Program 1 - 10 are not subject to the 20 step limitation. You can download the motion programmer from the same website as the manuals. Question 2: For each axis, one of the %Q bits assigned to the module determines whether to follow the internal encoder or an external encoder. For axis 1, it's bit offset 29, for axis 2 it's bit offset 45. If you have addressed the module at %Q0001, setting %Q0029 puts axis 1 into follower and setting %Q0030 tells it to follow the internal master. Remember, you also have to set a master frequency by loading commands and data into the correct %AQ registers. Question 3: Without a home switch, configure your "home Mode" as either "Move +" or Move -". Then, to home the axis, you will need to jog it to within one motor revolution of the home position and set the "Find home" %Q bit (offset 19 and 35 for axis 1 and 2). The axis will rotate in the specified direction at the configured "Find Home Velocity" until the next marker pulse. Then it will switch to the configured "Final Home Velocity", rotate through the configured "Home Offset", and stop.

Share this post


Link to post
Share on other sites
Thanks a lot, Steve I will try what you said, and for the first question I have another idea. I first set Vel. and Acce. the same value for both axse, then I use Block Syn. command followed with two same Pmove command for each axis. Do you think that will realize the funtion? I mean could this make two axse move from there home position to the same distence with same Vel. and Acce.?

Share this post


Link to post
Share on other sites
What you're proposing is called synchronized start, and it may work just fine. The decision to use that instead of follower mode is largely a matter of personal preference. If the motion profile is simple, I try to stay away from using programs 1 - 10 with the DSM302 and the APM modules, simply because it takes a second software module to maintain it. Program 0 is not too bad, but if you're using Logicmaster you still need to switch between programming and configuration.

Share this post


Link to post
Share on other sites
Daniel has sent me two sample files for review. I realize that others can't see the specifics of his system, but my observations may be pertinent to general applications of the DSM module, so I'll post them here. In the email in which he sent the files, Daniel writes: There are three %I points for each axis that must be true before the module can execute any motion commands (other than jog). These are "Axis Enabled", "Position Valid", and "Drive Enabled". In your system, these are %I105, %I106, and %I107 for axis 1 and %I131, %I132, and %I133 for axis 2. The Axis Enabled bit will be set if there are no errors present. You need to pulse the "Clear Error" output bit to get Axis Enabled. The Position Valid bit will be set when the axis has successfully completed a homing procedure. In your case, since you've configured "Move +" as your homing procedure, when you pulse %Q28 for axis 1 or %Q44 for axis 2, the motor should rotate in the positive direction and stop when it sees a marker (Z) pulse from the encoder. At that point, the Position Valid bit should be set. The Drive Enable bit should be set when you turn on %Q27 for axis 1 and %Q43 for axis 2. Daniel, what error codes are you getting? Another observation: Your software overtravel limits are +1000 user units for positive motion and -1000 user units for negative direction. At the same time, your jog velocity is 12000 user units per second. this doesn't give you much time to move before you generate an overtravel fault.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0