Welcome to Synthiam!

Program robots using technologies created from 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
Resolved Resolved by Rich!

Getping Unknown Command

When I try to save a script with GetPing in it I get this error:

User-inserted image

AI Support Bot
Related Content
Synthiam
Based on your post activity, we found some content that may be interesting to you. Explore these other tutorials and community conversations.
United Kingdom
#1  
What's the code? GetPing isn't a command as such, it must be assigned to a variable, used in an IF statement etc.

I can confirm GetPing() works in the latest version of ARC. Check the EZ-Script help on the right of the EZ-Script dialogue.
United Kingdom
#3  
Paste your code you are trying to use. Although it seems you are not assigning it to a variable or using it in an IF statement.

If you code looks like this

Code:

GetPing(d0,d1)
then it is incorrect.

GetPing (and any of the "Get" functions) must be used as part of something bigger, for instnace;

Code:

$ping=GetPing(d0,d1)
$random=GetRandom(0,100)

If (GetADC(ADC0) < 100)
#4  
Finished the code and get this error.
Block directions - Start
Block directions - Error on line 3: Missing String Quotes or Invalid Expression: <
Block directions - Done (00:00:00.0156001)

Script:

Code:

#Check Left

If (GetPing(d0, d1)=<20)
$Noleft=1
EndIF

#check Forward
If GetPing(d2, d3)=<30)
$Noforward=1
Endif

#Check Right
If (Getping(d4, d5)=<20)
$Noright=1
Endif


This is just a practice script. Plan on doing a lot more work with it.
United Kingdom
#5  
Your problem lies with the if statement. It should be <= not =<

You're also missing the open bracket on the second IF.

You will find this code works;

Code:

#Check Left

If (GetPing(d0,d1) <= 20)
$Noleft=1
EndIF

#check Forward
If (GetPing(d2,d3) <= 30)
$Noforward=1
Endif

#Check Right
If (Getping(d4,d5) <= 20)
$Noright=1
Endif
#6  
Also you really don't need to use the = sign in your if statements here. The less than sign is sufficient... the ping return is so varied that it will rarely ever equal any variable/Constant you may have set anyway...
United Kingdom
#7  
You can also replace the = part by increasing the < by 1. <= 20 is the same thing as <21.

Personally I always use the <= but it's personal preference.