Welcome to Synthiam!

Program robots using technologies created by industry experts. ARC is our free-to-use robot programming software that makes features like vision recognition, navigation, and artificial intelligence easy.

Get Started
Asked — Edited

No Response To Scripts

I am working with a V3 on a robot arm. I have included some of the "Hand" example scripts in my project and edited them by naming the servos as per my project. The servos will not respond to them nor will they respond to the scripts I write. All my servos work well with the slide controls in the configuration windows.
What am I doing wrong?
When I press "START" in a sample script window it shows that the script is working and then that it is done but there is no movement at the servos.

#1  
Would need to see the script to know what is wrong. You can post one of the scripts here, or you can post your project or save it to EZ Cloud and let us know the name.

Alan
PRO
Synthiam
#2  
Sounds like you are missing sleep() commands between the servo movements. As Alan mentioned, it's impossible to help without seeing your script or a project. However, help you along - I will give you this example...

Code:


servo(d0, 10)
servo(d2, 50)

# Pause while we let the servos move into position
sleep(500)

servo(d0, 100)
servo (d2, 10)

# Pause while we wait for the servos to move into position
sleep(500)


however, you can write scripts - but using the Auto Positioner is much cooler:D
#3  
Thanks for the answers.
My computer skills are very limited and I still have to figure out how to get the screen pictures out to you in the proper format.. I am working on it.
I have used DJ's example with my project's servos ports and got the same result as I did with my own script. No movement.
I will get the screen pictures out to you shortly.
PRO
Synthiam
#4  
1) Are you connected to the ezb?

2) Are you connecting the servos correctly to the ez-b v3?

3) Is there power on the pins for the v3?
#5  
I am connected and the servos respond to the slides in the configuration windows for each of them. I therefore assumed there is power to the pins. I will test the pins with a meter anyway.
United Kingdom
#6  
Post the script so we can see what's happening.

Edit the script
Highlight all text (Ctrl + A)
Copy text (Ctrl + C)
Come back to this topic
Reply and paste it in to the reply (Ctrl + V)
#7  
Here goes
servo(d6,75)
servo(d1,60)
sleep(500)
servo(d6,50)
servo(d1,50)
sleep(500)
United Kingdom
#8  
Make the sleep longer, change the 500 to something bigger, say 1000.

Also check no other control is holding or moving the servos.

The script itself should work and it should take half a second to change from one position to the other.
#9  
@Island fox Stupid question but the servos are plugged into ports D1 and D6 on the EZB right? Are you using the 'Release' command in the main menu by any chance?
Try this instead

Code:


servo(d6,100)
servo(d1,100)
sleep(1500)
servo(d6,1)
servo(d1,1)
# sleep(1000) don't need a sleep here
#10  
The servos are connected to the proper ports. D1 and D6. Actually the servos on the arm are connected as follows. D1,D2,D3,D4,D5,D6.
D1 is the gripper and D6 is the shoulder.
No other controls that I know of are holding the servos.
I released all the servos in their own configuration windows. I will check on this "release command" in the "main menu".
I have made a video and I am getting ready to use youtube (all new to me) in order to send it to you but I have to learn a little more about that process.
Please be patient with me, I'll get it done.
#11  
Hey no worries, I got nothing better to do... LOL... If you use the release command you need to also use the reset servo speed command next to it in the main menu... otherwise the servos won't move.... This is for the V4 anyway, not sure about the V3, but it's worth a try....

If you release the servos in the vertical or horizontal controls then the servos won't move when you run your script....

Try this... reload your project, set all servos to where you want them using the horizontal/vertical servo controls then do not use any release commands and try your script again....
#12  
Thanks everyone
I have reloaded the project and set all the servos to where I want them. and did not use any release commands. Still no response.
I will have a video probably by tomorrow evening for you to see what I am doing. I hope to be able to produce it and post it by then but my plans often go astray for various reasons.
PRO
Synthiam
#13  
Can you please post your project? It's really easy - this will be a simple solution for you because scripts always work:) First, this may sound silly but are you actually pressing the START button on the script to run it? If so, are you connected to the internet?

Also, are you certain you know how to edit a script? IE, are you pressing the gear icon to bring up the script editor window?

This learn link might help you: http://www.ez-robot.com/Tutorials/Lesson/23

That link provides information about how to edit scripts. Perhaps you are not actually editing a script?
#14  
Well I managed to get a video published on you tube. http://youtu.be/N_svyhCR6rU.
I hope this will show what I am doing wrong or what I do not understand in the script process.
Forgive the bad quality of the video. I am learning. The next one will be better.
#15  
This really woukd have been easier if you just uploaded your project rather than a video, but the solution is simple. Your v3 is set as board 1 not board 0, but your script is not specifying the board, so it defaults to board 0.

Alan
#16  
To fix the script without changing anything else, add "1." before every port command.

ie

Code:


servo (1.d6,75)

would replace the first line of your script.

If you don't have a particular reason you are using board 1 instead of board 0 then just enter the com port in the connection panel for board 0 replacing the default EZ-B v4 IP address. You will need to redefine the servo objects if you still plan on using them to use board 0 but your scripts will be easier, and some objects, like movement panels that only work on board 0 will work.

Alan
PRO
Synthiam
#17  
As Alan mentioned, using board 1 isnt useful by skipping board 0. Please follow the tutorials and it will be helpful to get you up and running.
#18  
Hey thanks a million.
Well I guess we can close this discussion now. I have switched everything to Board 0 and voila all is well. I have looked in the script tutorial again to find where it would indicate to a novice like me that one should start with board 0 and can not find anything to that effect. Should I look somewhere else?
I have learned a lot and thank you all for your input and your patience..
Alain
#19  
It is in the script manual, but after all the commands in the Reference section:

Quote:

References

Multiple EZ-B Boards

ARC supports multiple physical EZ-B Boards connected to your computer. You can specify the board by putting the board number in front of the port. For example: Servo(2.d0, 8) will move the D0 servo on EZ-B board #2 to position 8. If no board index is specified, the first board (zero) is assumed. If using more than one board, the first board is always responsible for movement panels.


It took me a little digging to find it and I knew it was there, so maybe not the best documentation. I believe it is also mentioned in the ARC tutorial and the instructions for the connection box.

Alan