Difference between revisions of "HamsterPython"
From cogniteam
Line 11: | Line 11: | ||
− | === Python Example 1 | + | === Python Example 1 === |
+ | * Receive laser scan from robot to decide if free | ||
<syntaxhighlight lang="python" line='line'> | <syntaxhighlight lang="python" line='line'> |
Revision as of 13:40, 19 March 2019
Python setup
- Note you are on the HamsterNet
<syntaxhighlight lang="bash" line='line'>
$ export ROS_IP=<your IP>
</syntaxhighlight>
<syntaxhighlight lang="bash" line='line'>
$ export ROS_MASTER_URI=http://10.0.2.<HAMSTER AGENT Number>:11311
</syntaxhighlight>
Python Example 1
- Receive laser scan from robot to decide if free
<syntaxhighlight lang="python" line='line'>
- !/usr/bin/env python
import rospy from sensor_msgs.msg import LaserScan
def is_free(ranges ,start_index, end_index ,min_distance): s_ranges = ranges[start_index:end_index] b_ranges = [i for i in s_ranges if i <= min_distance] if len(b_ranges) > 1 :print "BLOCKED" else : print "FREE"
def callback(msg):
is_free(msg.ranges,160,200,0.2)
rospy.init_node('scan_values')
- Put your Hamster number instead of agent<number>
- The agent number is printed on the Hamster cover
sub = rospy.Subscriber('/agent14/scan', LaserScan, callback) rospy.spin()
</syntaxhighlight>