物流裁判机器人蜻蜓队长如何考取裁判

用Python实现nao机器人与RoboCup裁判盒间的通信 - CSDN博客
用Python实现nao机器人与RoboCup裁判盒间的通信
& & & &本人现在是一名大三能源化工专业的学生,出于兴趣,大二时进入我校人形机器人实验室,做nao也将近一年了,期间也代表学校参加了2013年中国RoboCup大赛Spl的比赛。现在觉得很有必要把我的一些学习经验和想法写出来,供交流参考之用。因为本人并非计算机,软件相关专业,水平有限,如有错误,还望批评指正。
& & & & 当我开始写13年的比赛程序时,我决定先把机器人和裁判盒之间的通信程序写出来。通信的数据格式在RoboCupGameControlData.h文件里定义了,开始我是用C++写的通信程序,做成远程模块运行时,没有问题,但是做成本地模块时出了点问题,也没有解决。最后便改为用python在choregraphe里实现,发现效果还不错,而且代码量少了很多。
& & & & 源代码见下方;
import socket
import struct
class MyClass(GeneratedClass):
def __init__(self):
GeneratedClass.__init__(self)
self.memory = ALProxy(&ALMemory&)
def onLoad(self):
self.bstart = True
self.bChangtoSend = False
def onUnload(self):
self.bstart = False
def onInput_onStart(self):
self.GameController_IP = self.getParameter(&GameController_IP&)
self.GameController_Port = self.getParameter(&GameController_Port&)
self.teamNumber = self.getParameter(&teamNumber&)
self.playerNumber = self.getParameter(&playerNumber&)
self.threadtime = self.getParameter(&threadtime&)
self.msg_pack()
self.sock = socket.socket( socket.AF_INET, socket.SOCK_DGRAM )
self.sock.setsockopt(socket.SOL_SOCKET,socket.SO_REUSEADDR,1)#允许地址立即被重用
self.sock.bind( ('',self.GameController_Port) )
#####################################################
while(self.bstart):
self.msg,(self.addr, self.port) = self.sock.recvfrom( 200 )
if(self.addr == self.GameController_IP):
if(not self.bChangtoSend):
self.msg_unpack()
time.sleep(self.threadtime)
self.bChangtoSend = True
self.send()
time.sleep(self.threadtime)
self.bChangtoSend = False
#######################################################
def onInput_onStop(self):
self.onUnload()
self.sock.close()
def msg_unpack(self):
header,version,playersPerTeam,state,firstHalf,kickOffTeam,secondaryState,dropInTeam,dropInTime,secsRemaining,team1_teamNumber,team1_teamColour,team1_goalColour,team1_score,team1_players1_penalty,team1_players1_secsTillUnpenalised,team1_players2_penalty,team1_players2_secsTillUnpenalised,team1_players3_penalty,team1_players3_secsTillUnpenalised,team1_players4_penalty,team1_players4_secsTillUnpenalised,team1_players5_penalty,team1_players5_secsTillUnpenalised,team1_players6_penalty,team1_players6_secsTillUnpenalised,team1_players7_penalty,team1_players7_secsTillUnpenalised,team1_players8_penalty,team1_players8_secsTillUnpenalised,team1_players9_penalty,team1_players9_secsTillUnpenalised,team1_players10_penalty,team1_players10_secsTillUnpenalised,team1_players11_penalty,team1_players11_secsTillUnpenalised,team2_teamNumber,team2_teamColour,team2_goalColour,team2_score,team2_players1_penalty,team2_players1_secsTillUnpenalised,team2_players2_penalty,team2_players2_secsTillUnpenalised,team2_players3_penalty,team2_players3_secsTillUnpenalised,team2_players4_penalty,team2_players4_secsTillUnpenalised,team2_players5_penalty,team2_players5_secsTillUnpenalised,team2_players6_penalty,team2_players6_secsTillUnpenalised,team2_players7_penalty,team2_players7_secsTillUnpenalised,team2_players8_penalty,team2_players8_secsTillUnpenalised,team2_players9_penalty,team2_players9_secsTillUnpenalised,team2_players10_penalty,team2_players10_secsTillUnpenalised,team2_players11_penalty,team2_players11_secsTillUnpenalised = struct.unpack(&!4sI6BHI4B22H4B22H&,self.msg)
###############################################
#在这里对数据进行处理
#############################################
def msg_pack(self):
header = &RGrt&
version = 1
team = self.teamNumber
player = self.playerNumber
message = 2
self.ReturnData = struct.pack('4sIHHI',header,version,team,player,message)
def send(self):
if(self.bstart):
self.sock.sendto( self.ReturnData, (self.GameController_IP, self.GameController_Port) )
从代码我们可以看出,主要调用了python的socket库,调用了socket库unpack(拆包)和pack(封包)函数。
这个程序的主要功能就是接受裁判盒发来的消息,并返回消息给裁判盒。其实,对于接收消息和发送消息,应该用多线程写的,但当时还没有接触多线程,所以用一个bool变量
self.bChangtoSend来控制,把接受数据和发送数据组成“一个整体”,进行循环控制。
本文已收录于以下专栏:
相关文章推荐
Nao机器人比赛心得与建议在机器人队参加了两次Robocup比赛,下面是两次比赛的心得记录。...
NAO连接设置
Centos7搭建pptp一键安装脚本废话不多说,先上脚本地址:Centos7一键pptp使用:wget /DanylZhang/VP...
# yum -y install vim*
2 查看vim的位置
# whereis vim
这些天依然在看nao公司文档的东西,把读过的代码顺手敲了出来。代码依然很简单,但是为什么我要写博客呢?这其中有很大的原因在于,代码是死的,可是读着读着就感觉代码活了,而且,每次读都会有不同的感受。咱就...
今天读的代码,顺便写了出来,与文档的对比,差不多。import sys
import motion
import almath
import naoqi from ALProxy
def Stiff...
这次不让NAO说“hello world”了,我们让它说几个绕口令,作为我们对它编程的开始。
这里直接附上代码。#! /usr/bin/env python
#-*- coding: utf-8 -...
最近发现群里有朋友在问如何实现Nao机器人视频监控,就写下这篇博客,希望能帮助到大家。
直入正题,法国Nao机器人如何实现视频监控,这里提供三种方式,第一种是基于socket传输的,第二种是使用ope...
很早之前就打算写一下博客,但一直都被Hold住了,直到现在才开始,在接下来的一段时间,小编会陆陆续续更新一些关于Nao的博客
以下方法,仅供参考,大神请移步
篇幅比较少,大家理解方法就好。
他的最新文章
讲师:董岩
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)我校教师刘贵营担任国家机器人赛事裁判
&您现在的位置:&&&&&&&&&&&&&正文
我校教师刘贵营担任国家机器人赛事裁判
&&&&&&&&&&
我校教师刘贵营担任国家机器人赛事裁判
作者:现教处&&&&转贴自:本站原创&&&&点击数:330&&&&更新时间:&&&&文章录入:bgs
刘贵营老师担任“未来世界赛项”足球裁判
认真竞赛的小选手们
上一篇文章:
下一篇文章:
【】【】【】【】
&最新5篇热点文章
[748][598][613][735][1007]
&最新5篇推荐文章
[41755][47742][50536][86016][176409]
没有相关文章
&&网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
&&&&没有任何评论
|&&|&&|&&|&&|&&|&&|&河北衡水中学 地址:衡水市英才路228号 邮编053000 电话&&&&&&&&制作人:页面执行时间:250.00毫秒&&&&&&&&Powered by MyPower 3.51当前位置: &
担任国赛裁判 展现学院风采——我院教师王永宜受邀担任2017年全国职业院校技能大赛工业机器人技术应用项目裁判
09:44:34&&&来源:机电工程系&&&点击:
& & & 2017年全国职业院校技能大赛中职组工业机器人技术应用赛项于6月3日至4日在潍坊市安丘职业中专举行。经过教育部遴选,我院机电工程系教师王永宜被聘为该项赛事的裁判员,并圆满的完成了此次裁判工作。&
& & & 中职组工业机器人技术应用赛项的23名裁判员是根据教育部相关文件精神在本科院校、高职院校、中职院校、行业、企业中遴选具有良好职业操守、学风严谨、办事公正、坚持原则、责任心强的人员担任。王永宜老师入选国家级大赛裁判库,不但是大赛组委会对他能力的认可,更是对学院工业机器人专业发展水平的肯定。
& & & 工业机器人技术赛项(中职组)比赛为期两天,共有来自全国28个省、市、自治区的近百所中职学校,共600多名师生代表参加角逐。比赛以工业机器人为核心,在四个小时的时间里,分五个部分考验学生的安装维护、操作调试、编程应用等技能。其中,在难度最大的分拣环节,考生要通过编程,操作机械臂把多种不同形状的原件模型,准确的安放在电路板上。裁判员需具备较高的专业素养,丰富的考评工作经验,熟悉赛项涉及专业知识和操作技能。王永宜老师遵照裁判工作手册要求,坚持公平、公正原则,严格执行竞赛规则,圆满完成了大赛组委会安排的执裁任务。
& & & 通过本次执裁和交流,王永宜老师展示了学院教师的风采,扩大了学院知名度,积累了大赛组织、筹备经验,并对工业机器人技术最新发展动态有了深入了解。赛后,王永宜老师将指导相关专业的教育教学改革与专业建设,引导专业教学方向调整、内容更新与方法改革,以适应工业机器人技术快速发展的趋势,满足智能制造领域快速增长的人才需求。
相关热词搜索:滨州市电化教育馆成功举办电脑机器人竞赛裁判员和指导老师培训班
作者: &来源: &浏览次数: &添加时间:
2015年4月3日,全市电脑机器人竞赛裁判员和指导老师培训班在邹平梁邹小学成功举办。各县(区)电教站负责机器人竞赛工作的人员、学校从事中小学电脑机器人教学和赛事管理工作的人员和各机器人竞赛项目指导教师100余人参加了培训。
本次培训邀请了山东万硕科技与湖州爱创智能科技有限公司的专业培训讲师进行了培训。讲师系统详细的讲述了VEX IQ摩天高楼工程挑战赛、机器人工程挑战赛&&能源争夺战、人形机器人课本剧、人形机器人舞台剧展演、APRC墨攻之战等比赛的规则,对比赛细节与学生能力提出了建议。讲师还从机器人的发展与前景进行了生动的演讲,提高了培训人员对培养学生机器人能力的积极性。
本次培训提高了我市中小学生电脑机器人竞赛水平,规范了我市中小学电脑机器人竞赛活动,完善了我市中小学电脑机器人竞赛裁判员人才库,为今后在省级乃至国家级机器人大赛中取得好成绩奠定了基础。
滨州市教育局版权所有,未经授权禁止复制或镜像
地址:山东省滨州市渤海十六路699号 邮政编码:256602 E-MAIL:
网站备案号:鲁ICP备号-1
微信公众号关于2015年全国青少年电子制作巡回赛仲裁和裁判人员名单公示的通知
【发布时间:】   
【来源: 航管中心】
字体:【】 【】 【】
航管字〔号
各有关单位:
  为了贯彻国家体育总局赛风赛纪和反兴奋剂专项治理工作精神,营造公平、公正、公开的竞赛环境,现决定对2015年全国青少年电子制作巡回赛仲裁和裁判等人员名单进行公示,公示期为日至10月13日,具体名单公示如下:
一、仲裁委员会
(一)主任: 袁伟炎(浙江)
(二)副主任:吴小刚(四川)、岳礼生(四川)
二、竞赛项目裁判委员会
(一)总裁判长: 朱志雄(浙江)
(二)副总裁判长:李& 响(北京)、赵尔侠(四川)
(三)裁判秘书长: 李& 强(浙江)
(四)裁判副秘书长:陈国平(浙江)
(五)电路创新裁判长:黄& 海(广东)
(六)电路创新副裁判长:王& 宇(四川)
(七)智能寻轨器裁判长: 刘建荣(广东)
(八)智能寻轨器副裁判长:鲜春花 (四川)
(九)模拟机器人裁判长: 李亚君(上海)
(十)模拟机器人副裁判长:李& 侨(四川)
(十一)遥控编码探雷器裁判长: 李& 玲(浙江)
(十二)遥控编码探雷器副裁判长:孙利民(四川)
(十三)太空探测器裁判长: 余胜华(浙江)
(十四)太空探测器副裁判长:程& 巧(四川)
(十五)智能机器人迷宫探险裁判长:赵吉刚(四川)
(十六)智能机器人迷宫探险副裁判长:黄& 月(四川)
(十七)成绩统计裁判长:俞& 峰(浙江)
(十八)成绩统计副裁判长:罗& 军(四川)
  公示期内,如对上述名单有异议,任何单位和个人均可以电话、书面或其他形式向国家体育总局航空无线电模型运动管理中心反映。以单位名义反映问题的,要加盖单位公章,以个人名义反映问题的,须署真实姓名,联系电话:010-。
&&&&&&&&&&&&&&&&&&&&&&&&&& 体育总局航管中心
&&&&&&&&&&&&&&&&&&&&&&&&&&& 日
国家体育总局版权所有 国家体育总局体育信息中心承办
国家体育总局通讯地址:北京市东城区体育馆路2号 邮政编码:100763  联系电话:010- 咨询信箱:zixun@
网站联系电话:010-82280  E_mail:webmaster@}

我要回帖

更多关于 机器人裁判盒设计 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信