예제 #1
0
파일: loop.py 프로젝트: shaon01/DIES_final
   thread.start_new_thread( receiveFromServer, (freqSend, ) )
except:
   print "Error: unable to start thread"

oldDesired = serverCom.desiredSpeed
#robot.startLineFollowing(serverCom.desiredSpeed)
print serverCom.desiredSpeed
print "--- Robot start"
robot.startLineFollowing(int(serverCom.desiredSpeed))
v_now = 0
dist,t_im= findDist()
P = 18
I = 1
err = 0
while 1:
   serverCom.currentSpeed = v_now
#   serverCom.displayData()
   if dist>0:
        
        if dist >= cruise_dist:
            err_prev = err
            err = (dist-v_now*t_im) - cruise_dist
            i_err = scipy.integrate.simps([int(err_prev), int(err)])
            err_new = P*err + I*i_err
            temp_sp  =  min(int(serverCom.desiredSpeed), err*t_im)
            v_now = max(temp_sp,0)
            if dist<400:
               v_now = 0
            robot.startLineFollowing(int(v_now*0.645))
            dist,t_im= findDist()
            
예제 #2
0
파일: loop.py 프로젝트: shaon01/DIES_final
    thread.start_new_thread(receiveFromServer, (freqSend, ))
except:
    print "Error: unable to start thread"

oldDesired = serverCom.desiredSpeed
#robot.startLineFollowing(serverCom.desiredSpeed)
print serverCom.desiredSpeed
print "--- Robot start"
robot.startLineFollowing(int(serverCom.desiredSpeed))
v_now = 0
dist, t_im = findDist()
P = 18
I = 1
err = 0
while 1:
    serverCom.currentSpeed = v_now
    #   serverCom.displayData()
    if dist > 0:

        if dist >= cruise_dist:
            err_prev = err
            err = (dist - v_now * t_im) - cruise_dist
            i_err = scipy.integrate.simps([int(err_prev), int(err)])
            err_new = P * err + I * i_err
            temp_sp = min(int(serverCom.desiredSpeed), err * t_im)
            v_now = max(temp_sp, 0)
            if dist < 400:
                v_now = 0
            robot.startLineFollowing(int(v_now * 0.645))
            dist, t_im = findDist()