Please don't hesitate to Contact RSI if you need further assistance.
 
 
Controller Discussion:
 
 
 
 
 
 
 
 
 
 
 
 
 
SynqNet Discussions:
 
Q1:  If I change the controller sample rate, how will it effect the system and what else would I need to take care of? 
 
When tuning servo systems, it may be necessary to adjust the controller's sample rate for optimum performance. Changing the sample rate will directly affect the closed loop response of the PID control algorithm. To maintain stability and performance, the PID parameters must be scaled to match the change in sample rate. Read more
 
 
Sample Rate Compensation Summary
Term
Compensation
Proportional - Kp
None
Integral - Ki
new Ki = old Ki * (old SR / new SR)
Derivative - Kd
new Kd = old Kd * (new SR / old SR)
Acceleration Feedforward - Kaff
new Kaff = (new SR / old SR)2 * old Kaff
Velocity Feedforward - Kvff
new Kvff = (new SR / old SR) * old Kvff
Friction Feedforward - Kfff
None
Position Feedforward - Kpff
None

  

It is always good to increase the Sample Rate to achieve the best performance. However, you may not be able to increase above what the drive can accept.  This link shows the sample rates of some common SynqNet drives: http://support.motioneng.com/Technology/SynqNet/drive_update.htm 
This link shows what sample rates you can choose based on the acceptable rates of the drives in your network. 
 
 
 

Q2:  What is the difference between the XMP, ZMP, and ZMP-LT? 

Currently, the ZMP-SynqNet controllers have the same feature set as the XMP-SynqNet controllers. In the near future, the ZMP will have its own set of advanced features exclusive to the ZMP.

The main difference between the XMP and ZMP is performance. Whereas the XMP-SynqNet controllers uses a 32-bit floating point processor, the ZMP utilizes a 64-bit, 466 MHz floating point processor (Motorola MPC8245 PowerPC) for optimum speed and flexibility. This increase in processing power is necessary for supporting motion systems that have requirements which exceed the current limits of the XMP.

The ZMP-LT is a XMP replacement that provides high performance motion control utilizing a CPU from the ZMP family. This provides increased processing power with a 64-bit processor at 266 MHz (MPC8245 PowerPC) and utilizes the same firmware as the standard ZMP. This increased power makes it an ideal upgrade from the XMP controller allowing optimum speed, flexibility, and optimization with MechaWare.

Read More 

 Q3:  What is the difference between the different SynqNet topologies such as String and Ring? 

String Topology is the most basic network configuration. A String Topology has nodes connected to the either the controller’s OUT port or the controller’s IN port, but not both.

Dual String Topology has nodes that are discovered on both the controller’s OUT port and IN port.

Ring Topology is similar to the string topology, except an idle link is added between the last node and the controller. During normal operation the packet routing is identical to a string topology. If a cable breaks, the packets are automatically routed around the break using the idle link.

Read more

 

Q4: How do I tune a system? This is our unofficial PID tuning procedure.

This section has moved, see our Topics page. 

 Q5: I cannot get RapidSetup to recognize all of my drives.

The most likely reason that the Controller is unable to connect to all of the nodes on a network, is because of the controller's saved topology.If you have previously saved the controller's Topology, then the controller is expecting the same configuration as when it was saved. So if you then increase the node count, it will not connect to them. This will cause a Topology Mismatch error. The same is true if you decrease the node count by taking a node off of the network and try to connect.  To fix this you must click "Clear Topology" in the motion controller settings.
 
 
 
Q6: I just took my SynqNet controller out of the box. What do I do next?
 
1.) Download the latest version of RapidCode Motion Suite (RMS) from a link we will send you.
 
2.) Run the .msi file you just downloaded.
 
3.) The RapidCode Motion Studio Setup box will appear. Click Next, agree to the terms, choose the C:\SynqNet\ directory, and then Install.
 
4.) Turn OFF your computer, insert the SynqNet card (XMP, ZMP, or ZMP-LT) into the PCI slot on your PC. Turn ON your PC.
 
5.) Now go to Control Panel -> System Properties -> Hardware -> Device Manager. Look for the device called Intelligent I/O (I20) Controller. Right click and select update driver. The Hardware Update Wizard will appear.
 
6.) Select "No, Not this time" and click Next. Select "Install from a list or specific location" and click Next. Now click Browse then select the folder C:\SynqNet and click OK. Now click Next and it should install the driver.
 
7.) Now in the Device Manager, check to see that the device has no warnings. Right click on it and go to properties. Under the Device status it should say "This device is working properly" and should be renamed to appropriate type of Motion Controller. Click OK and close the Device Manager.
 
8.)Re-start your computer.
 
9.) Next, open C:/SynqNet/RapidSetup.exe. and you should get a screen like the one below.
 
 
 
 10.) Click Initialize
If you get this error: RSI_CONTROLLER_INVALID_RSIID at the bottom of the window you should CONTACT RSI for further assistance.
 
If we have provided you a License Key, check the "I want to enter a License Key" box, paste the key and then click initialize, restart RapidSetup.
 
11.) You should now see a screen like the one below. You need to download firmware to your controller.  This firmware is a .bin file and will be located in the C:\SynqNet folder. Click the "!" to download. 
 
 
 

Q7: How do I set user units with pathmotion and a multiaxis object?

You can use the method UserUnitSet() to set the user units. UserUnitSet() is an axis object and therefore if you are using a multiAxis object, you must set each axis in the multiaxis object individually. You can also set them to different values depending on the resolution of the motors you are using.
 
If you are using pathmotion, changing the user units will effect the postion arrays you load into pathmotion. When you initialize a line or arc, the values you enter must be in the "user" units that you changed accordingly. However, the VectorVelocitySet(), VectorAccelerationSet(), and VectorDecelerationSet() do not account for the user units change because each axis could potentially have a different user unit. Make sure that these are in counts, or consider using PathRatioSet(). See Q8 Below for more about PathRatioSet.

 Q8: How does PathRatioSet() effect the motion parameters for pathmotion?

If the axes in your system have different gear ratios, or you are using motors with different resolutions you may want to consider using PathRatioSet() to compensate for the difference. Lets say you have a two axis machine, one axis is directly coupled while the other has a 2.13:1 gear reducer. Both motors have the same resolution, the X axis has 9740 counts/inch of travel while the Y axis has 20807 counts/inch of travel.
 
Example 1:
 
Lets say we execute the following motion parameters: 

Start Position
inches (0,0)
End Position inches (1,1)
PathRatioSet() counts/inch (9740,20807)
VectorVelocity inches/second 1
VecorAcceleration inches/second^2 10
VecorDeceleration inches/second^2 10

 
Calculations:
 
Angle = inverse tan (1 in / 1 in) = 45 deg
 
Vx = 1 * cos(45) = 0.707 in/s (6886.18 counts/s)                                        // 0.707 in * 9740 counts/in = 6886.18 counts
Vy = 1 * sin(45) = 0.707 in/s (14710.55 counts/s)                                      // 0.707 in * 20807counts/in = 14710.55 counts
 
 
 
Example 2:
 
And again with the following motion parameters:
Start Position
inches (0,0)
End Position inches (2,1)
PathRatioSet() counts/inch (9740,20807)
VectorVelocity inches/second 1
VecorAcceleration inches/second^2 10
VecorDeceleration inches/second^2 10
 
Calculations:
 
Angle = inverse tan (1 in / 2 in) = 26.565 deg
 
Vx = 1 * cos(26.565) = 0.894 in/s (8707.56 counts/s)                                        // 0.894 in * 9740 counts/in = 8707.56 counts
Vy = 1 * sin(26.565) = 0.447 in/s (9304.89 counts/s)                                      // 0.447 in * 20807 counts/in = 9304.89 counts