首页 > 其他分享 >9、教程-3控制器的更多方面

9、教程-3控制器的更多方面

时间:2023-07-27 18:55:13浏览次数:42  
标签:教程 编程 多方面 机器人 控制器 传感器 节点

现在我们开始讨论与机器人控制器编程相关的主题。我们将设计一个简单的控制器,以避免在前面的教程中创建的障碍。
本教程将向您介绍Webots中机器人编程的基础知识。在本章末尾,您应该了解场景树节点和控制器API之间的链接是什么,机器人控制器必须如何初始化和清理,如何初始化机器人设备,如何获取传感器值,如何命令执行器,以及如何编程简单的反馈环。
本教程仅介绍Webots函数的正确用法。机器人算法的研究超出了本教程的目标,因此此处不再赘述。处理本章需要一些基本的编程知识(任何C教程都应该是足够的介绍)。在本章的最后,给出了进一步的机器人算法的链接。

将之前的.wbt文件保存为新的文件epuck_avoid_collision.wbt

理解e-puck 模型

控制器编程需要一些与电子吸盘模型相关的信息。为了创建防撞算法,我们需要读取其炮塔周围的8个红外距离传感器的值,并启动其两轮。距离传感器分布在转台周围的方式和电子吸盘方向如图所示。
距离传感器由机器人层次结构中的8个DistanceSensor节点建模。这些节点由它们的名称字段(从ps0到ps7)引用。我们稍后将解释如何定义这些节点。现在,只需注意,可以通过Webots API的相关模块(通过Webots/distance_sensor.h包含文件)访问DistanceSensor节点。距离传感器返回的值在0和4096之间按比例缩放(与距离分段线性)。4096表示测量到大量的光(障碍物很近),0表示没有测量到光(没有障碍物)。
控制器API是一个编程接口,可以让您访问机器人的模拟传感器和执行器。例如,包含webots/distance_sensor.h文件允许使用wb_dinstance_sensor_*函数,并且使用这些函数可以查询DistanceSensor节点的值。有关API函数的文档可以在参考手册中找到,并附带每个节点的说明。

 

标签:教程,编程,多方面,机器人,控制器,传感器,节点
From: https://www.cnblogs.com/gary-guo/p/17585796.html

相关文章

  • RunnerGo:详细使用教程,带你轻松拿捏性能测试
    RunnerGo简介:RunnerGo是基于go语言开发的轻量级性能测试平台,支持接口测试、自动化测试、性能测试等3大测试模块,相对于传统的性能测试工具,它具有运行速度快、资源占用少等特点。并且还支持可实时查看性能测试报告的平台RunnerGo的优势:1.RunnerGo运行速度更快,更节省资源采用go......
  • idea2023.1.3 最新激活教程
    说明本教程用来激活 idea2023.1.3版本。激活效果 下载idea2023.1.3版本客户端官网地址:https://www.jetbrains.com/idea/download/other.html根据自己所需下载相应的版本安装(解压)idea2023.1.3版本客户端解压版本的直接在自己的软件安装目录解压即可安装版本一路nex......
  • 九州八荒录H5游戏详细图文架设教程
    前言这次给大家带来一款丧心病狂的超变版仙侠H5游戏,九州八荒录H5,变态到什么程度呢?各种宝物升级到上万阶,还没有达到上限,战力也突破到了千万亿,只有你够肝,榜一大佬指日可待!本文讲解九州八荒录游戏架设教程,想研究H5游戏如何实现,体验游戏中秒天秒地秒空气的一定不要错过。我架......
  • Systemd 入门教程
    Systemd入门教程:命令篇Systemd是Linux系统工具,用来启动守护进程,已成为大多数发行版的标准配置。本文介绍它的基本用法,分为上下两篇。今天介绍它的主要命令,下一篇介绍如何用于实战。一、由来历史上,Linux的启动一直采用init进程。下面的命令用来启动服务。$sudo/et......
  • 6、编程基础-控制器编程
    控制器编程下页介绍如何编写控制器代码。尽管最初专注于C,但大多数相关和非语言特定的细节已被翻译成C++、Java、Python和MATLAB。要更深入地了解其他语言中的等效函数/方法,请检查节点和API函数以及C++/Java/Python。HelloWorld例子c语言#include<webots/robot.h>#include......
  • 5、开发环境-调试C/C++控制器
    控制器处理在Webots环境中,Webots应用程序和每个机器人C/C++控制器在不同的操作系统进程中执行。例如,当执行“soccer.wbt”世界时,内存中总共有八个进程;一个用于Webots,六个用于六个玩家机器人,一个用于监督机器人。若要使用MicrosoftVisualStudio调试C/C++控制器,请参阅此处。当控......
  • Jmeter45 Dubbo Sampler 插件及其教程
    转载Jmeter(五十)DubboSampler-紫陌花间客-博客园(cnblogs.com) 一、前言随着分布式普及,日常工作中多少会接触到dubbo,对于dubbo接口的调用或者压测等等。调用最简单的方式便是telnet,或者泛化调用的方式。进入telnet命令行,invoke对应方法以及传入对应的参数即可。当然......
  • 软件测试|web自动化测试神器playwright教程(十一)
    前言在我们进行web自动化测试的过程中,我们经常会面临需要登录的情况,每一次打开页面如果都需要重新登录的话,就会大大增加测试所需要的时间,体现不出自动化测试的优势,我们都知道selenium可以通过cookie实现登录,那么playwright能不能实现这个功能呢?答案是肯定的,playwright可以实现......
  • 给小白用户的程序使用保姆级教程-控制台程序篇
    给小白用户的程序使用保姆级教程-控制台程序篇程序交付后,经常会遇到客户拿到代码不会用的情况,有些稍微提醒下就能自行解决,但也遇到过甚至连编译器都不知从哪里启动,不知哪个按钮是编译,甚至不知“编译”这个词的概念。因此将遇到的问题总结一下,整理一个保姆级教程供大家参考。2.......
  • FreeMarker简介及教程
    FreeMarker是一个模板引擎,一个基于模板生成文本输出的通用工具,使用纯Java编写 FreeMarker被设计用来生成HTMLWeb页面,特别是基于MVC模式的应用程序 虽然FreeMarker具有一些编程的能力,但通常由Java程序准备要显示的数据,由FreeMarker生成页面,通过模板显示准备的数据(如下图) FreeMar......