'!TITLE "RCXSample_Move.pcs"

Sub Main 

	Dim caoCtrl As Object
	Dim caoRob As Object

	Dim caoVarSrvo as Object
	Dim caoVarWhere as Object
	Dim caoVarP10 as Object
	Dim caoVarP11 as Object
	Dim caoVarP12 as Object
	Dim caoVarP13 as Object
	Dim caoVarS1 as Object

	Dim vRes As Variant

'	set caoCtrl = cao.AddController("rcx1", "CaoProv.YAMAHA.RCX","","conn=com:2:19200:o:8:1:1, timeout=20000")
	set caoCtrl = cao.AddController("rcx1", "CaoProv.YAMAHA.RCX","","conn=eth:10.6.235.100:23, timeout=20000")

	set caoVarP10 = caoCtrl.AddVariable("P10")
	set caoVarP11 = caoCtrl.AddVariable("P11")
	set caoVarP12 = caoCtrl.AddVariable("P12")
	set caoVarP13 = caoCtrl.AddVariable("P13")
	set caoVarS1 = caoCtrl.AddVariable("S1")

	set caoRob = caoCtrl.AddRobot("rob1", 1)
	set caoVarSrvo = caoRob.AddVariable("@SERVO")
	set caoVarWhere = caoRob.AddVariable("@WHERE")

	if (Left(caoVarSrvo.Value, 3) = "OFF") then
		vRes = caoRob.Execute("Servo", array("ON"))	'全軸のサーボON

		do while (Left(caoVarSrvo.Value, 3) = "OFF")
		loop
	end if		

	caoVarP10.Value = Array(0, 100000, 0, 0, 0, 0)	' 整数=パルス
	caoVarP11.Value = Array(350.0, 170.0, 0, 0, 0, 0)
	caoVarP12.Value = Array(110.0, 250.0, 0, 0, 0, 0)
	caoVarP13.Value = Array(0, 300000, 0, 0, 0, 0)

	caoVarS1.Value = Array(0, 100000, 0, 0)	' S1のY軸を100mm/degシフト

	caoRob.Move 1, "P13", "SPEED=50"	' 1=PTP
	caoRob.Move 1, "P11", "SPEED=30"
	caoRob.Move 1, "P12", "SPEED=100"
	caoRob.Move 1, "P10", "SPEED=50"

'	caoRob.Execute "SHIFT", "S1"		' S1のシフト使用

	caoRob.Move 2, "P11"			' 2=直線補間
	caoRob.Move 2, "P10", "S=80"

'	S1 = caoVarWhere.Value			' Shiftの座標確認	
'	caoRob.Execute "SHIFT", 0		' S0のシフト使用

'	caoRob.Move 3, "P10"			' 3=円弧補間
'	caoRob.Move 3, "P14"			

	caoRob.Move 4, "P11", "S=50"		' 現在位置からP11=170mm/deg移動
	caoRob.Move 4, "0 -50.0 0 0 0 0"	' 現在位置から-200mm/deg移動
	
	caoRob.Move 1, "0 300.0 0 0 0 0", "S=100"
	caoRob.Move 1, "0 0.0 0 0 0 0", "S=100"
	caoRob.Move 1, "0 30.0 0 0 0 0", "S=100"
	caoRob.Move 1, "0 0.0 0 0 0 0", "S=100"

End Sub


