title: could not move my Obstacle Avoidance Robot
body: <p>I am newbie to Raspberrypi3.i want to make a Obstacle Avoidance Robot using Raspberrypi3.i connected my rasberrypi through putty for remote access. i successfully connected remotely and wrote the code.
  the code is shown below.</p>
  
  <p>board:- Raspberrypi3 modelB
  Motor Driver:-L293D</p>
  
  <p><div class="snippet" data-lang="js" data-hide="false" data-console="true" data-babel="false">
  <div class="snippet-code">
  <pre class="snippet-code-html lang-html prettyprint-override"><code>import RPi.GPIO as GPIO                    #Import GPIO library
  import time
  
  #Import time library
  GPIO.setwarnings(False)
  GPIO.setmode(GPIO.BCM)                    # programming the GPIO by BCM pin numbers
  
  TRIG = 17
  ECHO = 27
  led = 22
  
  m11=16
  m12=12
  m21=21
  m22=20
  
  GPIO.setup(TRIG,GPIO.OUT)                  # initialize GPIO Pin as outputs
  GPIO.setup(ECHO,GPIO.IN)                   # initialize GPIO Pin as input
  GPIO.setup(led,GPIO.OUT)                  
  
  GPIO.setup(m11,GPIO.OUT)
  GPIO.setup(m12,GPIO.OUT)
  GPIO.setup(m21,GPIO.OUT)
  GPIO.setup(m22,GPIO.OUT)
  
  GPIO.output(led, 1)
  
  time.sleep(5)
  
  def stop():
      print "stop"
      GPIO.output(m11, 0)
      GPIO.output(m12, 0)
      GPIO.output(m21, 0)
      GPIO.output(m22, 0)
  
  def forward():
      GPIO.output(m11, 1)
      GPIO.output(m12, 0)
      GPIO.output(m21, 1)
      GPIO.output(m22, 0)
      print "Forward"
  
  def back():
      GPIO.output(m11, 0)
      GPIO.output(m12, 1)
      GPIO.output(m21, 0)
      GPIO.output(m22, 1)
      print "back"
  
  def left():
      GPIO.output(m11, 0)
      GPIO.output(m12, 0)
      GPIO.output(m21, 1)
      GPIO.output(m22, 0)
      print "left"
  
  def right():
      GPIO.output(m11, 1)
      GPIO.output(m12, 0)
      GPIO.output(m21, 0)
      GPIO.output(m22, 0)
      print "right"
  
  stop()
  count=0
  while True:
   i=0
   avgDistance=0
   for i in range(5):
    GPIO.output(TRIG, False)                 #Set TRIG as LOW
    time.sleep(0.1)                                   #Delay
  
    GPIO.output(TRIG, True)                  #Set TRIG as HIGH
    time.sleep(0.00001)                           #Delay of 0.00001 seconds
    GPIO.output(TRIG, False)                 #Set TRIG as LOW
     #78th line..my code was struck up in this while loop
    while GPIO.input(ECHO)==0:#Check whether the ECHO is LOW                
         GPIO.output(led, False)             
    pulse_start = time.time()
  
    while GPIO.input(ECHO)==1:              #Check whether the ECHO is HIGH
         GPIO.output(led, False) 
    pulse_end = time.time()
    pulse_duration = pulse_end - pulse_start #time to get back the pulse to sensor
  
    distance = pulse_duration * 17150        #Multiply pulse duration by 17150 (34300/2) to get distance
  
    distance = round(distance,2)                 #Round to two decimal points
    avgDistance=avgDistance+distance
  
   avgDistance=avgDistance/5
   print avgDistance
   flag=0
   if avgDistance &lt; 15:      #Check whether the distance is within 15 cm range
      count=count+1
      stop()
      time.sleep(1)
      back()
      time.sleep(1.5)
      if (count%3 ==1) &amp; (flag==0):
       right()
       flag=1
      else:
       left()
       flag=0
      time.sleep(1.5)
      stop()
      time.sleep(1)
   else:
      forward()
      flag=0</code></pre>
  </div>
  </div>
  </p>
  
  <p>when i tried to move my robot forward, back,left and Right.it is not moving.and my code is stuck up in while loop..which is in 78.(number mentioned in code).what is the problem there?is there any wrong in code? or cant i connect my raspberrpi through putty???if yes,is there any other way i can connect remotely my raspberrypi and work on Robot...sorry for my bad english.please help.thankyou in advance.</p>