合工大 机器人技术 作业

共四次作业报告,CSDN下载:下载链接

作业内容:

  1. 《机器人技术》第一次作业
    题目: 在机器人足球比赛中,server和球员client之间通过发送字符串来进行信息交互,其中server要把某球员的听觉和视觉信息发送给该球员,信息的格式如下所示:
    (hear Time Sender Message)
    (see Time ObjInfo ObjInfo …)
    其中
    (hear Time Sender Message)的具体含义如下:
     Time:前的仿真周期。
     Sender
     如果是其他球员发送的消息,那么是发送者的相当方向(Direction)
     self:发送者是自己本人。
     referee:裁判是发送者。
     online_coach_left 或者online_coach_ringt:发送者是在线教练。
     Message:消息内容。
    (see Time ObjInfo ObjInfo …)的具体含义如下:
     Time:当前时间。
     ObjInfo表示了可视对象的信息。其格式为:
    (ObjName Distance Direction DistChng DirChng BodyDir HeadDir)
     ObjName = (player Teamname Unum)
     |(goal Side)
     |(ball)
     |(flag c)
     |(flag [ l | c | r] [ t | b ])
     |(flag p [ l | r] [ t | c | b ])
     |(flag [ t | b] [ l | r ] [10 | 20 | 30 | 40 |50 ])
     |(flag [ l | r] [ t | b ] [10 | 20 | 30 ])
     |(flag [ l | r | t | b ] 0)
     |(line [ l | r | t | b ])
     Distance,Direction表示目标的相对距离和相对方向
     DistChng和DirChng分别表示目标距离和方向的相对变化,如果是固定物体(球和球员以外的所有对象)则没有改项值
     BodyDir 和HeadDir,分别是被观察球员相对观察者的身体和头部的相对角度,只有是球队对象才有这一项值。
    要求:编写程序解析球员所看到和听到的信息。
    示例:(hear 1022 -30 passto(23,24))(see 1022 ((ball) 20 -20 1 -2) ((player hfut1 2) 23 45 0.5 1 22 40 ) ((goal r) 12 20))
    输出:
    在1022周期 hear 从 -30 方向 听到了 passto(23,24);
    在1022周期 see Ball 距离我的 Distance 是 20, Direction是 -20,DistChng是1,DirChng是-2;player hfut 2距离我的Distance 是 23, Direction是 45,DistChng是0.5,DirChng是1,它的BodyDir是 22和HeadDir 是 44;goal r 距离我的Distance 是 12, Direction是 20。
    一些参考建议:
    场上对象: (f r b 10)表示场上某个点,具体见教材28页,教材上写的是(flag r b 10),大家写程序的时候以f为准。
    本示例中左右2边的名称分别为hfut1和hfut2, 大家写程序的时候hfut1的球员信息存储在在队友里面,hfut2存储在对手里面。
    对象的参考名称如下:
    OBJECT_BALL, /*!< Ball /
    OBJECT_GOAL_L, /
    !< Left goal / // 2 goals
    OBJECT_GOAL_R, /
    !< Right goal /
    OBJECT_LINE_L, /
    !< Left line / // 4 lines
    OBJECT_LINE_R, /
    !< Right line /
    OBJECT_LINE_B, /
    !< Bottom line /
    OBJECT_LINE_T, /
    !< Top line /
    OBJECT_FLAG_L_T, /
    !< Flag left top / // 53 flags
    OBJECT_FLAG_T_L_50, /
    !< Flag top left 50 /
    OBJECT_FLAG_T_L_40, /
    !< Flag top left 40 /
    OBJECT_FLAG_T_L_30, /
    !< Flag top left 30 /
    OBJECT_FLAG_T_L_20, /
    !< Flag top left 20 /
    OBJECT_FLAG_T_L_10, /
    !< Flag top left 10 /
    OBJECT_FLAG_T_0, /
    !< Flag top left 0 /
    OBJECT_FLAG_C_T, /
    !< Flag top center /
    OBJECT_FLAG_T_R_10, /
    !< Flag top right 10 /
    OBJECT_FLAG_T_R_20, /
    !< Flag top right 20 /
    OBJECT_FLAG_T_R_30, /
    !< Flag top right 30 /
    OBJECT_FLAG_T_R_40, /
    !< Flag top right 40 /
    OBJECT_FLAG_T_R_50, /
    !< Flag top right 50 /
    OBJECT_FLAG_R_T, /
    !< Flag right top /
    OBJECT_FLAG_R_T_30, /
    !< Flag right top 30 /
    OBJECT_FLAG_R_T_20, /
    !< Flag right top 20 /
    OBJECT_FLAG_R_T_10, /
    !< Flag right top 10 /
    OBJECT_FLAG_G_R_T, /
    !< Flag goal right top /
    OBJECT_FLAG_R_0, /
    !< Flag right 0 /
    OBJECT_FLAG_G_R_B, /
    !< Flag goal right bottom /
    OBJECT_FLAG_R_B_10, /
    !< Flag right bottom 10 /
    OBJECT_FLAG_R_B_20, /
    !< Flag right bottom 20 /
    OBJECT_FLAG_R_B_30, /
    !< Flag right bottom 30 /
    OBJECT_FLAG_R_B, /
    !< Flag right bottom /
    OBJECT_FLAG_B_R_50, /
    !< Flag bottom right 50 /
    OBJECT_FLAG_B_R_40, /
    !< Flag bottom right 40 /
    OBJECT_FLAG_B_R_30, /
    !< Flag bottom right 30 /
    OBJECT_FLAG_B_R_20, /
    !< Flag bottom right 20 /
    OBJECT_FLAG_B_R_10, /
    !< Flag bottom right 10 /
    OBJECT_FLAG_C_B, /
    !< Flag center bottom /
    OBJECT_FLAG_B_0, /
    !< Flag bottom 0 /
    OBJECT_FLAG_B_L_10, /
    !< Flag bottom left 10 /
    OBJECT_FLAG_B_L_20, /
    !< Flag bottom left 20 /
    OBJECT_FLAG_B_L_30, /
    !< Flag bottom left 30 /
    OBJECT_FLAG_B_L_40, /
    !< Flag bottom left 40 /
    OBJECT_FLAG_B_L_50, /
    !< Flag bottom left 50 /
    OBJECT_FLAG_L_B, /
    !< Flag left bottom /
    OBJECT_FLAG_L_B_30, /
    !< Flag left bottom 30 /
    OBJECT_FLAG_L_B_20, /
    !< Flag left bottom 20 /
    OBJECT_FLAG_L_B_10, /
    !< Flag left bottom 10 /
    OBJECT_FLAG_G_L_B, /
    !< Flag goal left bottom /
    OBJECT_FLAG_L_0, /
    !< Flag left 0 /
    OBJECT_FLAG_G_L_T, /
    !< Flag goal left top /
    OBJECT_FLAG_L_T_10, /
    !< Flag left bottom 10 /
    OBJECT_FLAG_L_T_20, /
    !< Flag left bottom 20 /
    OBJECT_FLAG_L_T_30, /
    !< Flag left bottom 30 /
    OBJECT_FLAG_P_L_T, /
    !< Flag penaly left top /
    OBJECT_FLAG_P_L_C, /
    !< Flag penaly left center /
    OBJECT_FLAG_P_L_B, /
    !< Flag penaly left bottom /
    OBJECT_FLAG_P_R_T, /
    !< Flag penaly right top /
    OBJECT_FLAG_P_R_C, /
    !< Flag penaly right center /
    OBJECT_FLAG_P_R_B, /
    !< Flag penaly right bottom /
    OBJECT_FLAG_C, /
    !< Flag center field /
    OBJECT_TEAMMATE_1, /
    !< Teammate nr 1 / // teammates 61
    OBJECT_TEAMMATE_2, /
    !< Teammate nr 2 /
    OBJECT_TEAMMATE_3, /
    !< Teammate nr 3 /
    OBJECT_TEAMMATE_4, /
    !< Teammate nr 4 /
    OBJECT_TEAMMATE_5, /
    !< Teammate nr 5 /
    OBJECT_TEAMMATE_6, /
    !< Teammate nr 6 /
    OBJECT_TEAMMATE_7, /
    !< Teammate nr 7 /
    OBJECT_TEAMMATE_8, /
    !< Teammate nr 8 /
    OBJECT_TEAMMATE_9, /
    !< Teammate nr 9 /
    OBJECT_TEAMMATE_10, /
    !< Teammate nr 10 /
    OBJECT_TEAMMATE_11, /
    !< Teammate nr 11 /
    OBJECT_OPPONENT_1, /
    !< Opponent nr 1 / // opponents 73
    OBJECT_OPPONENT_2, /
    !< Opponent nr 2 /
    OBJECT_OPPONENT_3, /
    !< Opponent nr 3 /
    OBJECT_OPPONENT_4, /
    !< Opponent nr 4 /
    OBJECT_OPPONENT_5, /
    !< Opponent nr 5 /
    OBJECT_OPPONENT_6, /
    !< Opponent nr 6 /
    OBJECT_OPPONENT_7, /
    !< Opponent nr 7 /
    OBJECT_OPPONENT_8, /
    !< Opponent nr 8 /
    OBJECT_OPPONENT_9, /
    !< Opponent nr 9 /
    OBJECT_OPPONENT_10, /
    !< Opponent nr 10 /
    OBJECT_OPPONENT_11, /
    !< Opponent nr 11 */

  2. 《机器人技术》第二次作业
    题目:用面向对象的思维设计相关类,从而实现直线与直线、直线与圆、直线与矩形的交点。
    要求各给出每个案例的至少一个示例的程序。

  3. 《机器人技术》第三次作业
    题目:已知2个点的信息,定位自己的绝对坐标。
    设图中C(0,0),P1(-52.5,-32),P2(-52.5,32),P3(52.5,32),P4(52.5,-32),P5(0,-32),
    P6(0,32),P7(-30,-7),P8(-30,7),P9(30,7),P10(30,-7),G1(-52.5,0),G2(52.5,0)
    随机得到附近2点距离自己的信息(r,theta),r表示目标点距离自己的距离,theta
    表示以自己中心的极角.(顺时针(0,180)
    ,逆时针(0,-180)
    。计算自己的位置。
    输入示例:(P8220)(P71530)
    求出机器人在场上的绝对位置。
    P1
    P2
    P3
    P4
    C
    P5
    P7
    P8
    P6
    P10
    10
    P9
    G1

  4. 机器人技术第四次作业
    ID3算法实现 链接

你可能感兴趣的:(笔记)