產品協同設計第二組

Vrep << Previous Next >> Onshape

Vrep-2

試著用鍵盤的前後左右測試robot - Download

參考網址:http://www.forum.coppeliarobotics.com/viewtopic.php?t=1575&p=6085#p6065

week7測試物件

測試用Vrep呼叫方向鍵的指令

(內建程式推不上去改用截圖放)

------------------------------------------------------------------------------------------------------------

測試方向鍵於手足球的人偶自由度&code設定 : 

RJ1 : 為人偶前後踢球的軸代稱  \  RJ2 : 為控制人偶左右的桿子的軸代稱

樹狀圖為gif中所表示

下方為Lua code --->用於Vrep3.6.1版本中 

function sysCall_init() 
    right_left_handle= sim.getObjectHandle('RJ1')
    up_down_handle= sim.getObjectHandle('RJ2')
    MaxVel=5
    right_left_velocity=0
    up_down_velocity=0
    dVel=0.5;
    sim.setJointTargetVelocity(right_left_handle,right_left_velocity)
    sim.setJointTargetVelocity(up_down_handle,up_down_velocity)
end

function sysCall_actuation() 
    message,auxiliaryData=sim.getSimulatorMessage()
    while message~=-1 do
        if (message==sim.message_keypress) then
            if (auxiliaryData[1]==32) then
                -- right key
                right_left_velocity=0
                up_down_velocity=0
                sim.setJointForce(right_left_handle, 0)
                sim.setJointForce(up_down_handle, 0)
                break
            else
                sim.setJointForce(right_left_handle, 10000)
                sim.setJointForce(up_down_handle, 10000)
            end
            if (auxiliaryData[1]==2007) then
                -- left key
                right_left_velocity=right_left_velocity+dVel*1.3
            end
            if (auxiliaryData[1]==2008) then
                -- right key
                right_left_velocity=right_left_velocity-dVel*1.3
            end
            if (auxiliaryData[1]==2009) then
                -- up key
                up_down_velocity=up_down_velocity+dVel/10
            end
            if (auxiliaryData[1]==2010) then
                -- down key
                up_down_velocity=up_down_velocity-dVel/10
            end
        end
        message,auxiliaryData=sim.getSimulatorMessage()
    end
    
    if right_left_velocity>MaxVel then
        right_left_velocity=-5
    end
    if right_left_velocity<-MaxVel then
        right_left_velocity=5
    end
    
    if up_down_velocity>MaxVel then
        up_down_velocity=0
    end
    if up_down_velocity<-MaxVel then
        up_down_velocity=0
    end
    
    sim.setJointTargetVelocity(right_left_handle,right_left_velocity)
    sim.setJointTargetVelocity(up_down_handle,up_down_velocity)
    
end 

測試版本目前還未設定雙判定來改變控制的桿件(希望能行)&還有電腦的回擊也還沒寫入。

keyboard code 設定 {Unicode} : 

http://www.runoob.com/try/try.php?filename=tryjsref_event_key_keycode

week8測試物件

嘗試將兩軸分開控制,由於我們是利用加速度來驗算所以在編寫code方面較為複雜,目標為利用鍵盤按鍵分別控制各軸,達成一次控制一軸且可切換之目標。


Vrep << Previous Next >> Onshape