viple与物理机器人(一):线控模拟

2023-12-11 23:37

本文主要是介绍viple与物理机器人(一):线控模拟,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

为了检测viple程序与物理机器人是否能顺利连接上

如果能顺利连接上,那么,可以通过内建事件从而控制物理机器人的前进、后退、左转、右转以及暂停。

如果不能连接上,首先,程序无法控制物理机器人,其次,当viple程序中编写沿右墙迷宫算法(或者其他算法),由于viple程序和物理机器人不能连接上,无论算法多么高级,都使用不上,当然,也就看不到任何运行效果了。

所以,首先测试viple与物理机器人是否能连接上,这一步骤非常重要。

第1步:取出智能小车,为小车装上电池(或者插上电源)。

找到船型开关

按船型开关,打开系统,此时小车系统运行,发出WiFi信号。

选中小车发出的WiFi信号,输入密码:12345678,进行连接。

此时,显示的是无法连接到这个网络,那是否连接上了,还需要编写viple程序来进行测试。

第2步:编写viple程序,使用↑↓←→方向键实现控制小车前进、后退、左转、右转的控制。

打开viple软件(如果此时打不开,可以先断开小车的wifi,连接到其他的网络,从而打开viple。因为viple软件的启动是需要联网的,如果不想联网使用,可以选用4.0.0.1版本)

拖入主机并配置,注意:viple编写的程序,想要运行在物理机器人上,不再是模拟器,所以,需要按照物理机器人的说明书(常用的配置是:小车的主机IP地址:192.168.10.1、端口号:8124,驱动器左轮和右轮的端口号分别是0和1,前方、右方、左方的超声波传感器对应的端口号分别是10,12,11,其他配置需要看说明书)来进行配置,不可随意更改ip地址和端口号等,由于小车发出了wifi信号,连接类型选用Wi-Fi即可

编写程序逻辑

首先是前进,机器人驱动器配置了两个电机,可用于行走,所以当按下↑时,两个电机的驱动功率值应该分别设置为0.5(只要是0~1之间的数均可,正数表示前进,负数表示后退,左右轮的驱动功率值相等,且都为正数,此时,物理机器人可以向前直行,如果不相等,无法走直线)

根据想法,首先需要拖入一个机器人驱动器,并配置信息(也是需要根据说明书来配置,不可随意设置)

添加上按键事件,将左轮和右轮的驱动功率值设置为0.5,实现前进。

接下来运行程序,检测小车是否前进。

首先,电脑连接上小车的WiFi信号,再运行viple程序,然后按↑,观察小车是否前进。

此时,viple程序和物理机器人连接成功,按键盘上的方向键↑,观察到小车在直行。

点击查看运行效果

小车与程序连接成功,于是,按照同样的思路,将后退、左转、右转做完整(如果您想要暂停,还可以添加一个暂停按键,实现停止)。

点击查看运行效果

可能出现的问题(无论哪种情况发生,都要先解决了再做后面的复杂程序):

1、打开船型开关后,在电脑上无法找到小车的wifi信号

解决方案:1)关闭小车电源,重新启动;2)观察电压,若电压太低,可以充一会电后再打开;3)刷新电脑的WiFi信号,使得电脑能快速搜索到对应的wifi信号;4)关闭电脑的wifi,再重新打开;5)将小车的系统进行重装(不到万不得已,不要做这一步,因为您将先研究操作系统是如何安装的)。

2、连接上wifi后,启动viple程序失败

解决方案

手动设置本机IP地址,将本机IP设置为与机器人IP在同一个网段即可

由于机器人的IP地址是192.168.10.1,所以,本机地址可以设置为192.168.10.小车编号(例如:小车编号为012,那么,本机地址可以设置为192.168.10.12),当然,还需配置子网掩码和默认网关,然后点击保存即可。(本处需要有一定的计算机网络知识)

核心:IP地址、子网掩码和默认网关,然后点击“保存”

 

这篇关于viple与物理机器人(一):线控模拟的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/482482

相关文章

Python基于火山引擎豆包大模型搭建QQ机器人详细教程(2024年最新)

《Python基于火山引擎豆包大模型搭建QQ机器人详细教程(2024年最新)》:本文主要介绍Python基于火山引擎豆包大模型搭建QQ机器人详细的相关资料,包括开通模型、配置APIKEY鉴权和SD... 目录豆包大模型概述开通模型付费安装 SDK 环境配置 API KEY 鉴权Ark 模型接口Prompt

【C++】_list常用方法解析及模拟实现

相信自己的力量,只要对自己始终保持信心,尽自己最大努力去完成任何事,就算事情最终结果是失败了,努力了也不留遗憾。💓💓💓 目录   ✨说在前面 🍋知识点一:什么是list? •🌰1.list的定义 •🌰2.list的基本特性 •🌰3.常用接口介绍 🍋知识点二:list常用接口 •🌰1.默认成员函数 🔥构造函数(⭐) 🔥析构函数 •🌰2.list对象

usaco 1.2 Transformations(模拟)

我的做法就是一个一个情况枚举出来 注意计算公式: ( 变换后的矩阵记为C) 顺时针旋转90°:C[i] [j]=A[n-j-1] [i] (旋转180°和270° 可以多转几个九十度来推) 对称:C[i] [n-j-1]=A[i] [j] 代码有点长 。。。 /*ID: who jayLANG: C++TASK: transform*/#include<

hdu4431麻将模拟

给13张牌。问增加哪些牌可以胡牌。 胡牌有以下几种情况: 1、一个对子 + 4组 3个相同的牌或者顺子。 2、7个不同的对子。 3、13幺 贪心的思想: 对于某张牌>=3个,先减去3个相同,再组合顺子。 import java.io.BufferedInputStream;import java.io.BufferedReader;import java.io.IOExcepti

【每日一题】LeetCode 2181.合并零之间的节点(链表、模拟)

【每日一题】LeetCode 2181.合并零之间的节点(链表、模拟) 题目描述 给定一个链表,链表中的每个节点代表一个整数。链表中的整数由 0 分隔开,表示不同的区间。链表的开始和结束节点的值都为 0。任务是将每两个相邻的 0 之间的所有节点合并成一个节点,新节点的值为原区间内所有节点值的和。合并后,需要移除所有的 0,并返回修改后的链表头节点。 思路分析 初始化:创建一个虚拟头节点

每日一题|牛客竞赛|四舍五入|字符串+贪心+模拟

每日一题|四舍五入 四舍五入 心有猛虎,细嗅蔷薇。你好朋友,这里是锅巴的C\C++学习笔记,常言道,不积跬步无以至千里,希望有朝一日我们积累的滴水可以击穿顽石。 四舍五入 题目: 牛牛发明了一种新的四舍五入应用于整数,对个位四舍五入,规则如下 12345->12350 12399->12400 输入描述: 输入一个整数n(0<=n<=109 ) 输出描述: 输出一个整数

【算法专场】模拟(下)

目录 前言 38. 外观数列 算法分析 算法思路 算法代码 1419. 数青蛙 算法分析 算法思路 算法代码  2671. 频率跟踪器 算法分析 算法思路 算法代码 前言 在前面我们已经讲解了什么是模拟算法,这篇主要是讲解在leetcode上遇到的一些模拟题目~ 38. 外观数列 算法分析 这道题其实就是要将连续且相同的字符替换成字符重复的次数+

模拟实现vector中的常见接口

insert void insert(iterator pos, const T& x){if (_finish == _endofstorage){int n = pos - _start;size_t newcapacity = capacity() == 0 ? 2 : capacity() * 2;reserve(newcapacity);pos = _start + n;//防止迭代

基于树梅派的视频监控机器人Verybot

最近这段时间做了一个基于树梅派 ( raspberry pi ) 的视频监控机器人平台 Verybot ,现在打算把这个机器人的一些图片、视频、设计思路进行公开,并且希望跟大家一起研究相关的各种问题,下面是两张机器人的照片:         图片1:                   图片2                    这个平台的基本组成是:

PHP实现二叉树遍历(非递归方式,栈模拟实现)

二叉树定义是这样的:一棵非空的二叉树由根结点及左、右子树这三个基本部分组成,根据节点的访问位置不同有三种遍历方式: ① NLR:前序遍历(PreorderTraversal亦称(先序遍历)) ——访问结点的操作发生在遍历其左右子树之前。 ② LNR:中序遍历(InorderTraversal) ——访问结点的操作发生在遍历其左右子树之中(间)。 ③ LRN:后序遍历(PostorderT