
xDing是一款基于Scratch2.0的开源软件,结合硬件进行设计的机器人编程平台,采用了图形化积木搭建的方式编程,有菜单栏、舞台区、角色区、控件区、脚本区。
相比较Scratch2.0软件,xDing机器人编程软件增加了Arduino模式,在“代码区”可查看程序对应的代码并下载程序到机器人上。xding机器人编程软件有在线运行和下载运行两种方式。
在线运行是指使用数据线连接机器人和计算机,让保存在计算机上的程序与主控板进行通信。下载运行是指通过数据线,将程序下载到机器人上,断开数据线后,机器人执行程序。
机器人程序简介
Archie工作原理与现在的搜索引擎已经很接近,它依靠脚本程序自动搜索网上的文件,然后对有关信息进行索引,供使用者以一定的表达式查询。
由于Archie深受用户欢迎,受其启发,美国内华达System Computing Services大学于1993年开发了另一个与之非常相似的搜索工具,不过此时的搜索工具除了索引文件外,已能检索网页。
当时,“机器人”一词在编程者中十分流行。电脑“机器人”(Computer Robot)是指某个能以人类无法达到的速度不间断地执行某项任务的软件程序。
由于专门用于检索信息的“机器人”程序象蜘蛛一样在网络间爬来爬去,因此,搜索引擎的“机器人”程序就被称为“蜘蛛”程序。
Amarino基本上是由三个主要部分组成:\x0d\x0a\x0d\x0a1.Android应用程序称为“Amarino”\x0d\x0a2.Arduino的程序库称为“MeetAndroid”\x0d\x0a3.Amarino插件包(可选)\x0d\x0aAmarino你至少需要以下硬件:\x0d\x0a\x0d\x0a1.Android手机(支持蓝牙;android2.2及以上)\x0d\x0a2.一块Arduino板(Lilypad,Duemilanove,ArduinoBT ?)\x0d\x0a3.一个你的Arduino蓝牙模块\x0d\x0a4.其他Arduino模块(根须需要选择)\x0d\x0a重要! 请将您的蓝牙模块设置为57600或115200波特。因为有些模块更好地使用57600(旧的),而有些模块只能使用115200波特,所以当你已连接但不能发送数据时,尝试改变波特率的设置。\x0d\x0a\x0d\x0a开始配置环境\x0d\x0a\x0d\x0a1.配置Arduino蓝牙模块\x0d\x0a\x0d\x0a■线路连接图(切记蓝牙设备的RX连接arduino的TX;蓝牙设备的TX连接arduino的RX)\x0d\x0a\x0d\x0a2.下载并安装Amarino_2.apk到你的手机上\x0d\x0a\x0d\x0a3.下载并安装AmarinoPluginBundle.apk\x0d\x0a4.下载Arduino开发工具,下载完成后解压即可。\x0d\x0a5.下载MeetAndroid,\x0d\x0a6.解压MeetAndroid到arduino IDE安装目录下的libraries目录下。\x0d\x0a7.重启arduino IDE,如果正常的话,应该在(Sketch->Import Library出现MeetAndroid选项)如图:\x0d\x0a\x0d\x0a8.使用#include 即可开始编写Arduino程序\x0d\x0a第一次连接和测试\x0d\x0a\x0d\x0a目标:通过Android手机的蓝牙每隔5s发送0-255之间的随机数给Arduino,当Arduino接收到随机数后,就点亮led( port 13 )\x0d\x0a\x0d\x0a1.打开 Arduino IDE 选择”File->Examples->MeetAndroid->Test”\x0d\x0a\x0d\x0a■\x0d\x0a2.修改Serial.begin(57600);并不是所有办的默认速率都是57600.我的蓝牙模块为9600\x0d\x0a\x0d\x0a■\x0d\x0a3.编译并上传Test到Arduino。注意下载程序的时候一定要记得把接的蓝牙先拔掉再下载,否则下载不进arduino板 会出错误\x0d\x0a4.打开Android手机的Amarino程序\x0d\x0a5.点击【Add BT Device】,查找蓝牙设备,如果蓝牙模块安装正确将会出现在蓝牙设备列表中,如下图\x0d\x0a6.\x0d\x0a点击该蓝牙设备,进入设备列,点击左侧红色图标,进入如下界面\x0d\x0a\x0d\x0a7.点击【Add Event】,显示plugln,\x0d\x0a\x0d\x0a9.选择其中的【Test Event】,进入设置页面,点击【Save】\x0d\x0a\x0d\x0a10.返回蓝牙设备列表界面点击【Connect】,Amarino程序将开始每隔5s发送一个随机数据(0-255),Arduino上的LED(part 13)将开始闪动。您可以使用Arduino的Millis()函数来实现延迟一小时的功能。该函数可以获取自开机以来经过的毫秒数,因此可以通过计算时间差来实现时间控制。以下是一个简单的示例代码:
```c++
unsigned long previousTime = 0// 上一次执行的时间
const long interval = 3600000// 延迟的时间,单位为毫秒
void setup() {
// 初始化设置
}
void loop() {
unsigned long currentTime = millis()// 获取当前时间
if (currentTime - previousTime >= interval) { // 判断时间间隔是否达到要求
previousTime = currentTime// 更新上一次执行的时间
// 执行延迟一小时后的 *** 作
}
// 此处可以添加其他的代码,不会影响时间控制
}
```
在这个示例代码中,我们定义了一个常量`interval`表示需要延迟的时间,这里设置为一小时(3600000毫秒)。通过`millis()`函数获取当前时间和上一次执行的时间,计算它们之间的时间差,如果时间差大于或等于延迟的时间,就执行需要延迟一小时后的 *** 作,然后更新上一次执行的时间。
`millis()`函数返回的时间值会在长时间运行后溢出,因此需要特殊处理。上述示例代码中没有进行该处理,如果需要进行长时间的时间控制,应当使用更加复杂的时间处理方法。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)