I have been doing some things regarding connecting to multiple EZB-4 and have been having some problems with the servo Profile. Specifically, how it works in relation to a given project. I finally realized that you can't load up profiles for different robots in the same project. So I turned to the Advanced servo Profile feature since it can contain multiple profiles on a per board basis.
I had two robots connected in the same project, one via board 0 and one via board 1. I went to the Advanced servo Profile and used it to set up a profile for one robot on board 0 and another one on board 1. I could see each robot move as I clicked each servo up or down for a given board. That was fine. I saved the overall profile in the Advanced servo Profile window. I then shut everything down and restarted the robots and the project. I put both robots into the calibrate positions and went to the Advanced servo Profile window and loaded the profile I had saved earlier. Everything came back as before for board 0 and board 1. Unfortunately, unlike when one loads a regular single profile, neither robot responded to the loading. If I clicked a particular servo on one of the robots, that servo would suddenly respond and go to it's proper position according to the profile setting for that servo.
I tried to find more info via searching the posts, but got about 2800 hits for Advanced servo Profile. So that's not really fruitful. Also looked at the tutorials but saw nothing on the Advanced feature.
Basically. I'm wondering what the Advanced servo Profile really does and how do I get the individual robots to respond to their board's profile when it loads up?
Thanks.
Here's a couple good videos with some advanced servo profile info in them. Hope this helps.
@DaveSchulpius
Thank you for the videos. I believe I may not have been specific enough in my post. While these videos (especially the first one) do cover some more advanced concepts for creating a servo profile, I was referring to the "Advanced" option in the "Servo Profile" section under the "Project" tab. The one on the far right (the red gears). Clicking it will take you to the window that allows you to enter adjustments for every possible servo connection, real or virtual, for any board. It's that monster I'm having problems getting to actually do something after I use it to set up a profile for each of the two robots I'm working with. One on board 0 and one on board 1. It's a bit more difficult to use since there is no image with adjustment boxes for each servo shown. If I click "Load" while in that window, and choose the servo profile for board 0 and board 1 that I saved when I did the tweaks to each servo, the appropriate boxes are reloaded with the appropriate numbers for each board. Unfortunately, that information does not seem to be used to readjust each of the robots as happens when you load a single profile in the usual way, by using the "Load" option then the "Configure" (green gears) in the "Servo Profile" section. As soon as you click "Configure" the robot snaps to and the adjustments are re-applied.
So, at the moment, I don't see the use of the Advanced servo Profile. Perhaps there is something else that needs clicking to get the data to go to the robots.
Anyway, thanks again for your help.
Ya, EZ Robot is a powerful platform with loads of ways to adjust and tune everything from software to hardware. However "sometimes" the documentation is slight or non-existing on how to use some of these features turning your project into Non-EZ Robot (for that feature your working on anyway). I've been frustrated in the past when I come across an issue like this that I don't understand and can't find help on it. When that happens I feel like it wasn't meant for me to try to use it. It seemed like after shifting through tons of forum posts and looking through tutorials for that one feature or command that the only way was to school myself, experiment , and/or give up.
I do remember DJ saying that the advanced servo profiles were meant for servos of non-like manufactures or non-EZ Robot types of servos to get them to all work together. Of course this still doesn't answer your question or help you with using this tool. Sorry. Good luck.
I like to use "Advanced" servo Profile as it can do "ALL" the servos real and virtual, including those servos which do NOT appear in "normal" servo Profile as in "Configure".
Upon entering "Advanced" it shows the profile that the project is using, not necessary the positions the current states of all of the servos. Or you can re-load using "Load" to load a new set, but the servos do NOT move.
If you want to "change" the neutral (Calibrate Position) say 90 degree, or Offset (to fine tune the neutral position) to match what the project wants, just "move" or "click" them, then it will move to the position (say 90 degree +/- 3).
Be careful here, if say, the current position of servo D0 is 1 degree but the neutral is 90, it will move from 1 to 90 quickly depending on the speed of D0 was set. (and so are offset.)
Say, I have a Six, before entering "Advanced" I would execute "STAND", so all the servos are in their neutral position i.e. 90 degree.
Hope this help!
The servo profile includes adjustments for all boards. They are all included in one file. The files are not specific to the board.
The advanced servo profile is used often and has a use. The use perhaps does not accommodate your requirement - which does not imply it's useless. Much how a flathead screwdriver is not "useless" if the screw have flathead bits.
Perhaps you can shorten the example of what you're looking to do - so I can have a clearer understanding of the requirement to see if it's something that I can assist with.
am gonna try this with two screens ,each has its own servo profile. excample jd screen1 and roli screen2.
@ DJSures
Thank you for your response. Of course, when I said it was useless, I meant it's useless to me (at the moment). Let me break down what I am trying to do:
I am using one project to control two different types of robots. One controlled via board 0 and one via board 1. Basically that all works fine. I can use two AutoPosition controls to make them move as needed, one set to board 0 and the other to board 1. Again all works great. I can even make one cause the other to move by inserting Command Control statements in a script or directly in "Action" sequences.
The thing is I need to calibrate both robots in this one project via servo profiles.
In the normal sequence of events, using a single robot, I would use the "Load" option under "Servo Profile" to load up the appropriate offset settings for that robot. Then I would click the "Calibrate" option upon which the robot would immediately go to the calibrate position, including the offsets previously set up. Now all those offsets would be applied to that robot as it is programmed to make it's various moves. I shut down the Calibrate window and go on from there.
But I have two different robots. If I now click the "load" option in the "Servo Profile" again and choose the servo profile for the other robot, the values load, but only insofar as there servos in the same designation as the first robot. For example, both JD and Six have a D0 servo, so when loading up the Six servo profile (after I have loaded the profile for JD) the value for D0 will change to that needed for the Six. The image for the profile would still be for JD, however. Plus there are more servos for the Six that are not on JD so they don't show up at all. Even if they did, whatever shows up will be automatically routed to board 0 when the "Calibrate" option is clicked.
So, basically I can't use the usual calibrate procedure on the second robot. That is where I thought the "Advanced servo Profile" option could work out. And it does in that I can set the offsets for the robots on Boards 0 & 1 just fine, watching it adjust each as I click the plus and minus symbols. Once done, I save the combined profile.
If I then, at a later time, open the "Advanced servo Profile" window and reload the profile I created before, and try to use those settings to cause both robots to be set to their respective offsets, nothing happens. Unlike when I reload a profile in the usual way and the offsets are applied to the robot when I subsequently click "Calibrate." There seems to be no similar functioning button in the "Advanced servo Profile" window to cause the re-loaded offset settings to be applied to the robots. And that is my problem.
Wbs00001, I thought I had your email address, but I can't find it. I have an off-topic question for you, can you drop me a note? My email is in my profile.
Thanks.
Alan