Python Forum
Robot Stay Inside Circular Ring
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Robot Stay Inside Circular Ring
#1
I have a Lego Mindstorms brick running ev3dev (open source Linux) and I am writing a Python program for it. I want to enter it in a friendly Sumo style robot competition. Two robots are put inside a circular ring and whoever pushes their opponent outside the ring wins. So I need an "avoid the line" or "stay inside the black line circle" program.

Here is an example video wwwDOTyoutubeDOTcom/watch?v=3tguWcKTXQI&t=110s
I still have to clarify exactly what the ring will be, black area outlined by white, or something different. But I think I can assume I'll be avoiding a bold black line, and I can change that later if I need to.

I'm running ev3dev, brickman v.0.8.0, kernel 4.4.24-16-ev3dev-ev3 on a Lego Mindstorms EV3 programmable brick, revision 0006
I'm using PyCharm IDE and I push the code to the brick over WiFi.

Error:
<ev3dev.core.LargeMotor object at 0xb6903e30>> ignored robot@ev3dev:~/myproject$ python col-reflect-driveaway-v.2016.12.05.n01.py 0 Traceback (most recent call last):   File "col-reflect-driveaway-v.2016.12.05.n01.py", line 38, in <module>     m2.reset()   File "/usr/lib/python2.7/dist-packages/ev3dev/core.py", line 738, in reset     self.command = 'reset'   File "/usr/lib/python2.7/dist-packages/ev3dev/core.py", line 295, in command     self.set_attr_string('command', value)   File "/usr/lib/python2.7/dist-packages/ev3dev/core.py", line 216, in set_attr_string     self._set_attribute(attribute, "{0}".format(value))   File "/usr/lib/python2.7/dist-packages/ev3dev/core.py", line 204, in _set_attribute     self._attribute_cache.write(abspath(self._path + '/' + attribute), value) AttributeError: 'LargeMotor' object has no attribute '_path' Exception AttributeError: "'LargeMotor' object has no attribute '_path'" in <bound method LargeMotor.__del__ of <ev3dev.core.LargeMotor object at 0xb6960e30>> ignored robot@ev3dev:~/myproject$ 
Program
#!/usr/bin/env python3
# so that script can be run from Brickman

# I amd combining a "bump into wall, back up, turn 45 degrees, drive forward" program
# and a color sensor col-reflect program
# This is for a "sumo", robot inside of a circle outlined in black, drive forward, if sense black line then turn

# This code (or an earlier version of it) is posted at codepasteDOTnet/zrs5gq

from ev3dev.ev3 import *
from time import sleep


### col-reflect
# Connect EV3 color sensor and check connected.

cl = ColorSensor()
assert cl.connected, "Connect a color sensor to any sensor port"

# Put the color sensor into COL-REFLECT mode
# to measure reflected light intensity.
# In this mode the sensor will return a value between 0 and 100
cl.mode = 'COL-REFLECT'

while True:
   print(cl.value())
   sleep(0.5)

   # I get max 80 with white paper, 3mm separation
   # and 5 with black plastic, same separation

   direction = 1 # Switches between 1 and -1

   m = LargeMotor('outB')
   m.reset()
   m.run_forever(speed_sp=675 * direction)

   m2 = LargeMotor('outA')
   m2.reset()
   m2.run_forever(speed_sp=675)

   print(cl.value())
   sleep(0.5)

   new_color = cl.value()
   print new_color
   if new_color < 10:
     direction *= -1  # Reverse the direction. Forward becomes backward, backward becomes forward
     m.run_timed(time_sp=1000, speed_sp=300 * direction)
     sleep(1)
     print "I am sleeping"
     direction *= -1  # Reverse the direction. Forward becomes backward, backward becomes forward
     m.run_forever(speed_sp=675 * direction)
   touch = new_touch
#######
Reply


Messages In This Thread
Robot Stay Inside Circular Ring - by webmanoffesto - Dec-06-2016, 02:54 PM
RE: Robot Stay Inside Circular Ring - by micseydel - Dec-07-2016, 06:08 AM
RE: Robot Stay Inside Circular Ring - by micseydel - Dec-07-2016, 06:57 PM

Possibly Related Threads…
Thread Author Replies Views Last Post
  What is a circular import? asked by a newbie of newbies ineuw 1 975 Sep-16-2022, 07:27 PM
Last Post: Gribouillis
  The Wall-E Robot Argentum 1 1,441 Apr-03-2022, 03:01 PM
Last Post: sastonrobert
  Circular Import Led_Zeppelin 3 2,669 Jul-14-2021, 07:41 PM
Last Post: snippsat
  help on pandas circular import jip31 2 8,452 May-18-2021, 11:54 AM
Last Post: jip31
  Make these LEDs stay on duckredbeard 5 3,004 Apr-08-2021, 10:26 PM
Last Post: duckredbeard
  Circular import dependency hobbyist 9 3,929 Feb-23-2021, 11:57 AM
Last Post: Gribouillis
  DarkPaw Robot code Tyrelex78 3 2,161 Nov-27-2020, 12:06 AM
Last Post: Tyrelex78
Question How to make a button always stay on a point when resizing the window? _ShevaKadu 5 4,262 Nov-04-2020, 03:59 PM
Last Post: deanhystad
  How to iterate over some characters in a string and the others will stay as it is. ? sodmzs 9 4,465 Jun-17-2019, 06:45 PM
Last Post: perfringo
  Turning Robot towards goal, comparison of angles SpaceTime 0 2,776 Jan-21-2019, 10:26 PM
Last Post: SpaceTime

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020