发表日期: 2021-04-09 10:54:15 浏览次数:76
华容网站制作【华容网站优化】华容建网站、华容微信公众号运营、华容网页设计、华容微信小程序商城
华容,在我国,表示三个地区都有“华容”的简称。湖南省岳阳市华容县、湖北省鄂州市华容区、湖北省鄂州市华容区华容镇。
按以下方式设置组件的属性:
1. 设置NxtDrive1及NxtUltrasonicSensor1的BluetoothClient属性为 BluetoothClient1;(说明轮子的驱动与障碍物的侦测都需要依赖蓝牙通信——译者注)
2. 勾选NxtUltrasonicSensor1的BelowRangeEventEnabled属性(近距离侦测障碍物功能可用);
3. 设置NxtDrive1的DriveMotors属性
如果机器人的左轮电机与输出端口C连接,右轮电机与输出端口B连接,则保持默认设置“CB”;
如果机器人的配置与上述不同,则将DriveMotors属性设置为两个字母的文本,其中第一个字母是连接左轮电机的输出端口,第二个字母是连接右轮电机的输出端口。
4. 设置NxtUltrasonicSensor1的SensorPort属性
如果机器人的超声波传感器与输入端口4连接,则保持默认值“4”;
如果机器人的配置与上述不同,则将SensorPort设置为与超声波传感器连接的输入端口。
现在创建用户界面组件,如图12-2所示。
图 12-2 组件设计器中的应用
建立蓝牙连接时,Android设备需要访问NXT机器人具有唯一性的蓝牙地址,但蓝牙地址由8个用冒号分隔的2位数的十六进制数(二进制数的另一种表示方式)组成,输入起来异常麻烦,而且每次运行应用都要在手机上输入该地址。为了减少麻烦,使用ListPicker来显示已经与手机配对的机器人列表(列表项的值为机器人的名称及蓝牙地址),并从中选择一个。
使用按键来驱动机器人的前进、后退、左右转动、停止和断开连接,使用VerticalArrangement来放置除ListPicker以外的所有组件,用HorizontalArrangement来放置左右转向及停车按钮。
按照表12-2中列出的组件来创建图12-2所示的用户界面。
表12-2 NXT机器人控制器应用中的可见组件
组件类型 | 面板中分组 | 命名 | 作用 |
---|---|---|---|
ListPicker | User Interface | ConnectListPicker | 选择要连接的机器人 |
VerticalArrangement | layout | VerticalArrangement1 | 布局容器,容纳除ListPicker之外的组件 |
Button | User Interface | ForwardButton | 前进 |
HorizonalArrangement | layout | HorizonalArrangement1 | 布局容器,容纳左转、右转、停止按钮 |
Button | User Interface | LeftButton | 左转 |
Button | User Interface | StopButton | 停止 |
Button | User Interface | RightButton | 右转 |
Button | User Interface | BackwardButton | 后退 |
Button | User Interface | DisconnectButton | 与NXT断开连接 |
按照图12-2所示来设置可视组件布局:将LeftButton、StopButton和RightButton放在HorizontalArrangement1中,将ForwardButton、HorizontalArrangement1、BackwardButton和DisconnectButton放在VerticalArrangement1中。 按下列方式设置组件属性:
1. 取消勾选Screen1的Scrollable属性(滚屏功能);
2. 设置ConnectListPicker和DisconnectButton的宽度为“Fill parent”;
3. 设置VerticalArrangement1、ForwardButton、HorizontalArrangement1、LeftButton、StopButton、RightButton及BackwardButton的Width与Height为“Fill parent”;
4. 设置ConnectListPicker的Text属性为“连接”;
5. 设置ForwardButton的Text属性为“∧”;
6. 设置LeftButton的Text属性为“<”;
7. 设置StopButton的Text属性为“—”;
8. 设置RightButton的Text属性为“>”;
9. 设置BackwardButton的Text属性为“∨”;
10. 设置DisconnectButton的Text属性为“断开连接”;
11. 设置ConnectListPicker和DisconnectButton的FontSize属性为30;
12. 设置ForwardButton、LeftButton、StopButton、RightButton及BackwardButton的FontSize属性为40。
在这类应用中,当手机与NXT建立蓝牙连接之前,应该隐藏用户的操作界面,为此取消勾选VerticalArrangement1的Visible属性。不要担心,当NXT连通后,将重新显示用户界面。
本节将编程来设置应用的行为,包括:
用户从列表中选择机器人,并与之建立连接;
断开机器人与应用的连接;
使用控制按钮来操控机器人;
在机器人侦测到障碍物时,让它停下来。
添加第一个行为:连接到NXT。点击 ConnectListPicker将显示已配对的机器人列表,选中一个,将在应用与机器人之间建立蓝牙连接。
使用ConnectListPicker组件来显示机器人列表。ListPicker的外表像按钮,被点击后则显示列表项,并允许进行单选。
使用BluetoothClient1.AddressesAndNames块来提供列表,列表项是已经与Android设备配对的蓝牙设备的名称及地址。由于NXT已经将轮驱动及超声波组件的BluetoothClient属性设定为BluetoothClient1,因此AddressesAndNames属性列表中的设备会自动限定为这类机器人,其他类型的蓝牙设备(如耳机)将不会出现在列表中。表12-3列出了所需要的块。
表12-3 在应用中添加ListPicker列表所需要的块
块的类型 | 所在抽屉 | 作用 |
---|---|---|
ConnectListPicker.BeforePicking | ConnectListPicker | 当ConnectListPicker被点击时,触发该事件 |
set ConnectListPicker.Elements to | ConnectListPicker | 为ConnectListPicker设置可供选择的列表项 |
点击ConnectListPicker将触发ConnectListPicker.BeforePicking事件,并显示可选项列表。将ConnectListPicker.Elements属性设置为 BluetoothClient1.AddressesAndNames块,来设定可选项;ConnectListPicker将显示已经与Android设备配对的机器人列表。
图 12-3 显示机器人列表
测试:在手机上点击“连接”,看看会发生什么,你会看到所有已经与手机配对的机器人列表。
如果只见黑屏,说明手机尚未与任何机器人配对;如果见到其他蓝牙设备,如蓝牙耳机,说明 NxtDrive1与 NxtUltrasonicSensor1的BluetoothClient属性设置有误。
备案号: 苏ICP备11067224号
CopyRight © 2011 书生商友信息科技 All Right Reserved
24小时服务热线:400-111-6878 E-MAIL:1120768800@qq.com QQ:1120768800
网址: https://www.768800.com 网站建设:上往建站
关键词: 网站建设| 域名邮箱| 服务器空间| 网站推广| 上往建站| 网站制作| 网站设计| 域名注册| 网络营销| 网站维护|
企业邮箱| 虚拟主机| 网络建站| 网站服务| 网页设计| 网店美工设计| 网站定制| 企业建站| 网站设计制作| 网页制作公司|
400电话办理| 书生商友软件| 葬花网| 调温纤维| 海洋馆运营维护| 北京保安公司| 殡仪馆服务| 殡葬服务| 昌平殡葬| 朝阳殡葬|
欢迎您免费咨询,请填写以下信息,我们收到后会尽快与您联系
服务热线:400-111-6878