0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

采用蓝牙低功耗4.2技术遥控机器人车的动向

电子设计 来源:郭婷 作者:电子设计 2019-02-27 07:52 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

最新的蓝牙4.2低功耗(BLE),也称为蓝牙智能,专为物联网IoT)而打造。每个主要操作系统蓝牙技术的原生支持使得移动应用程序的开发变得简单。

使用PSoC Creator 3.2,Xcode 6和Swift应用程序开发环境,可以开发一款应用程序来处理简单的遥控车使用iPhone,演示在嵌入式BLE系统开发中使用GATT配置文件和GAP外设。该车由两台电机和一台带正交编码器的H桥和赛普拉斯半导体公司的PSoC4200 BLE器件构成。

采用蓝牙低功耗4.2技术遥控机器人车的动向

图1:PSoC4200来自赛普拉斯半导体可以使用蓝牙低功耗4.2来控制机器人汽车。

该项目从简单的LED和触摸板控制开始,指示连接状态。初始CAPSense滑块用于控制红色LED,当未连接电路板时,蓝色LED用于蓝色LED。

为PSoC4100 BLE创建新项目,可将组件添加到简单原理图中。 BLE组件添加到图形设计工具并链接到CapSense组件。需要PWM来驱动LED,并且因为蓝色LED为低电平有效,所以需要反转PWM,因此库中使用了非门。

PWM配置需要是单输出,需要库中的时钟组件。对于闪烁的LED,时钟配置为1 kHz。复位连接到逻辑低电平(因为它是高电平有效),更改PWM的名称使其更容易连接。该项目增加了一个线性滑块来处理评估板上的五个传感器

在原理图中配置BLE组件需要自定义配置文件,并且该板充当带有GAP(通用访问配置文件)外围设备的GATT服务器。 iPhone是GAP Central与电路板通信,作为GAP外设进行连接。

GATT服务器是BLE上的一个数据库,用于存储与iPhone作为GATT客户端共享的信息。

自定义配置文件实质上是创建GATT数据库,创建一个LED和CapSense的定制服务;这些都有UUID(通用唯一ID),以便iPhone可以找到这项服务。这使固件能够与该服务通信。 1字节LED特性表示可以远程写入和读取的LED状态,因此需要激活读取和写入标志。 CapSense特性(无符号16个2字节格式)只能读取,不能远程写入。为了在有变化时得到通知,激活通知标志。此时可以添加自定义的人类可读通知。

每个特性都需要一个128位的UUID,而Creator工具为它提供了一个默认值,可以在最低有效位进行修改。

GAP设置包括设备名称和广告设置。在此示例中,它通过关闭超时来一直通告。在每隔20到30毫秒发送一次的广告包中,有一些信息可以帮助识别设备,例如设备的名称和可用的服务。

设置BLE,CapSense,PWM和LED后,需要设置引脚。第一个要设置的引脚是CapSense端口4的pin0调制电容。然后将CapSense滑块连接到电路板上的P21至P25引脚。蓝色LED连接到Port3 pin7,RED LED连接到port2,pin6。然后,该工具会自动为固件生成应用程序。

固件

使用Xcode在Github项目中实现固件,第一个变量是表示LED状态的无符号全局变量,第二个变量是CapSense通知。

update_LED函数使用LED的当前状态更新GATT数据库。如果连接了BLE(来自GetState函数),则CYBLE_LEDCAPSENSE_LED_CHAR_HANDLE读取引脚的值,并在LED为低电平时将其反转。使用GATT WriteAttribute函数将1字节写入数据库。这可以在源代码中的任何位置调用,以读取LED的状态。

下一个功能与CapSense相同。这将使用CYBLE_LEDCAPSENSE_CAPSESNE_CHAR_HANDLE和2字节值进入GATT数据库。这也使用BLE中的notify函数,因此当CapSenseNotify变量发生更改时,会自动发送通知。

接下来是BLE事件处理程序。这将处理来自BLE的所有事件,例如堆栈打开或断开连接。这使用蓝色LED显示连接正在发生或正在关闭,因此这些调用会触发PWM并使用LED状态和CapSense值更新GATT数据库。这由堆栈固件自动处理。

下一个事件是写事件,当远程端想要写入GATT数据库时调用该事件。这里,堆栈给出了需要编写的特性。

然后可以使用Xcode为设备编译所有这些。

机器人

建造汽车本身相对简单,因为两个电机连接到H桥,该H桥映射到电路板上的连续引脚。设备上的开关显示在应用程序中,每个电机的速度可以通过应用程序控制以引导汽车。

图2:机器人车板结合了BLE芯片,两个轮子和一个H桥。

有四个关键特性,左右电机的转速计使用正交编码器,两个PWM驱动两个电机。 iPhone上有两个开关可以快速将特性切换为零。

原理图与初始LED项目具有相似的元素。 PWM很简单,周期为100,比较50,占空比为100,在iPhone上映射0到100比例。正交编码器使用TCPWM,它可以在1X模式下解码来自左右脉冲中的每一个的正交信号,从而计算脉冲而不是前沿和下降沿。

PSoC引脚足以直接为H桥供电,另一个引脚是软件控制的开关,通过软件控制电机的方向。最后一个是用于LED连接的PWM。

正交编码器每转计数64个脉冲,并且每187 ms触发一次中断以查找已发生的脉冲数并缩放以给出RPM编号。

自定义MOTOR_SERVICE配置文件具有四个特性,即8位整数,可写和可读,从-100到+100,速度左和速度右。这还包括人类可读的表格和通知。这会更新GATT数据库并发出通知。

BLE是具有机器人和电机服务UUID名称的外围设备。这简化了连接过程。

从工具生成固件,包括通知标志,左右转速计值以及左右速度。每次按下电路板按钮关闭电机时都会触发ISR,速度存储在GATT数据库中。

下一步是将固件链接到智能手机应用程序。

构建应用程序

在Swift中构建iOS应用程序有两个视图控制器,在赛普拉斯学院中有说明。第一个是表视图控制器,它显示手机可以看到的所有设备。当该类启动时,它会中继所有与其听到的服务相匹配的设备。在这种情况下,只有一个遥控车,因此表中只有一件事,但这可用于控制许多外围设备。

第二个视图控制器本身就是遥控器。这对左右转速计使用两个标签,在左右电机上使用两个开关。对于左右电机,选择器视图从-100到+100。

该模型有三个类:

RCcar.swift,它跟踪左右电机的连接和速度;

跟踪设备的BT.neighborhood类。

BLE连接类处理连接,以便RC对象具有与之关联的邻域和连接。该类记录了它对更改感兴趣的事实,并将选择器设置为两个滑块。

最后发生的事情是如果更新了转速计,那么它会更新屏幕上的左右文本值。在视图消失之前,您需要在按下后退按钮时禁用设备和连接。这些都通过Swift中的应用程序编程接口(API)连接到固件。

结论

PSoC 4100设备中最新的蓝牙低功耗4.2技术与简单的H桥,电机和编码器使得简单的iPhone应用程序易于开发。使用最新版本的PSoC Creator,Xcode和Swift开发工具允许开发人员为机器人创建原理图,固件和应用程序。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 机器人
    +关注

    关注

    213

    文章

    30580

    浏览量

    219558
  • 蓝牙
    +关注

    关注

    119

    文章

    6221

    浏览量

    177534
  • 遥控器
    +关注

    关注

    18

    文章

    871

    浏览量

    71123
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    人形机器人“造”,企扎堆布局!

    电子发烧友网报道(文/黄晶晶)12月26日,广汽集团正式发布自主研发的第三代具身智能人形机器人——GoMate。在业界引发新一轮人形机器人的关注。实际上,已经有不少企进入了人形机器人
    的头像 发表于 12-30 01:31 3094次阅读
    人形<b class='flag-5'>机器人</b>“造<b class='flag-5'>车</b>”,<b class='flag-5'>车</b>企扎堆布局!

    RK3576机器人核心:三屏异显+八路摄像头,重塑机器人交互与感知

    开发板的实际演示证明,RK3576能够轻松处理三屏显示和八路摄像头输入的复杂任务,同时保持低功耗和低发热特性,为机器人应用提供了理想的性能基础。 实测见证:RK3576轻松驾驭三屏八摄像头复杂任务理论参数
    发表于 10-29 16:41

    工业机器人的特点

    的基础,也是三者的实现终端,智能制造装备产业包括高档数控机床、工业机器人、自动化成套生产线、精密仪器仪表、智能传感器、汽车自动化焊接线、柔性自动化生产线、智能农机、3D 打印机等领域。而智能制造装备中工业
    发表于 07-26 11:22

    蓝牙语音遥控低功耗芯片选型HS6621CxC/OM6621

    系列凭借高集成度和低功耗特性,成为理想选择 蓝牙语音遥控器不仅是智能家居控制的枢纽,更是技术进步的缩影。其便捷的操作、智能的语音交互和低功耗
    发表于 05-22 15:23

    蓝牙低功耗模块的原理和应用介绍

    或更高版本标准的设备,它们采用低功耗蓝牙(BLE)技术。以下是其工作原理的简要概述: 1. 广播和连接模式:蓝牙
    的头像 发表于 05-21 15:56 904次阅读

    盘点#机器人开发平台

    图,电子技术资料网站具身智能机器人****开发平台——Fibot广和通发布机器人开发平台-电子发烧友网NVIDIA Isaac 英伟达综合性机器人开发平台NVIDIA Isaac 是英
    发表于 05-13 15:02

    详细介绍机场智能指路机器人的工作原理

    带)定位、Wi - Fi 定位等。蓝牙定位可以通过与机场内部署的蓝牙信标进行通信,获取机器人的大致位置信息。UWB 定位则利用超宽带信号实现更精确的定位,能够在复杂的室内环境中达到较高的定位精度,误差
    发表于 05-10 18:26

    【「# ROS 2智能机器人开发实践」阅读体验】机器人入门的引路书

    的非常好的,特别是一些流程图,很清晰的阐释了概念 很适合作为初学者入门的引路书 还能了解很多技术和框架,破除初学者的自负困境,让初学者知道功能是由很多开发者维护的,前人已经为各种产品搭建了完善的框架。避免陷入得一个单打独斗的错觉 一直蠢蠢欲动ros2和
    发表于 04-30 01:05

    自制一个支持AI 控制的无刷平衡机器人:开源项目D-BOT全攻略

    今天给大家介绍一款创意桌面机器人——D-BOT!它不仅是一个功能强大的平衡机器人,也是一个融合了AI控制、3D建模与PCB设计的开源项目。 D-BOT 被作者称为“小探险家”(Discovery
    发表于 04-28 11:45

    低功耗蓝牙和经典蓝牙,到底怎么选?

    和Bluetooth Smart两者又有什么区别?我的应用到底该选经典蓝牙技术还是低功耗蓝牙技术?这是很多刚接触
    的头像 发表于 04-07 16:01 1180次阅读
    <b class='flag-5'>低功耗</b><b class='flag-5'>蓝牙</b>和经典<b class='flag-5'>蓝牙</b>,到底怎么选?

    OM6621E 低功耗BLE5.1协议Soc芯片 蓝牙语音遥控器原理应用

    蓝牙语音遥控器的原理是利用蓝牙技术实现无线通信和语意识别技术实现语音控制。蓝牙语音
    发表于 01-14 15:01

    【「具身智能机器人系统」阅读体验】2.具身智能机器人的基础模块

    具身智能机器人的基础模块,这个是本书的第二部分内容,主要分为四个部分:机器人计算系统,自主机器人的感知系统,自主机器人的定位系统,自主机器人
    发表于 01-04 19:22

    【「具身智能机器人系统」阅读体验】+两本互为支持的书

    之极。 《计算机视觉之PyTorch数字图像处理》为《具身智能机器人系统》提供了感知和识别能力,而《具身智能机器人系统》则为《计算机视觉之PyTorch数字图像处理》提供了执行体。读好这两本书,无疑为了解和追随新技术潮流提供了助
    发表于 01-01 15:50

    【「具身智能机器人系统」阅读体验】2.具身智能机器人大模型

    近年来,人工智能领域的大模型技术在多个方向上取得了突破性的进展,特别是在机器人控制领域展现出了巨大的潜力。在“具身智能机器人大模型”部分,作者研究并探讨了大模型如何提升机器人的能力,大
    发表于 12-29 23:04

    OM6621E 低功耗BLE5.1协议Soc芯片 蓝牙语音遥控器原理应用

    蓝牙语音遥控器的原理是利用蓝牙技术实现无线通信和语意识别技术实现语音控制。蓝牙语音
    发表于 12-20 11:18