当前位置: 首页 > news >正文

eCAP超声波测距-ePWM电机调速

目录

eCAP超声波测距

整体框架

关键模块

实验效果

PWM电机调速

DRV8833基本介绍

整体框架


eCAP超声波测距

本实验所用的超声波HC-SR04模块如下图所示,左边为正面图,右边为反面图。

HC-SR04基本工作原理:

(1)采用Trig引脚触发测距,给至少10us的高电平信号;

(2)模块自动发送8个40khz的方波,自动检测是否有信号返回;

(3)有信号返回,通过Echo引脚输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间;

(4)测试距离=(高电平时间*声速(340M/S))/2。

本模块使用方法简单,一个控制口发一个10us以上的高电平,就可以在接收口等待高电平输出。一有输出就可以开定时器计时,当此口变为低电平时就可以读定时器的值,此时就为此次测距的时间,方可算出距离。如此不断的周期测,即可以达到你移动测量的值其工作时序图如下图所示。

故我们只要用DSP28069的eCAP3引脚连接到HC-SR04的Echo引脚,再利用一个IO引脚(本实验选取GPIO23)作为HC-SR04的触发源Trig引脚,其原理图如下图所示。

整体框架

关键模块

实验效果

最后将模型编译下载下载到主控板,然后在CCS中打开模型生成的工程文件,先点击编译,再点击调试,然后将下图的两个变量添加到Expressions中,再点击运行前,我们先将超声波传感器插在6号板子上(即MPU6050模块的板子)。然后在点击运行可以看到各个变量的值,用纸在超声波传感器的前方移动,观测Distan的变化是否和实际距离一致,同时观察两个LED的变化。

PWM电机调速

在有刷直流电机的固定部分有磁铁,这里称作主磁极;固定部分还有电刷。转动部分有环形铁芯和绕在环形铁芯上的绕组。 如图所示的两极有刷直流电机的固定部分(定子)上装设了一对直流励磁的静止的主磁极N和S,在旋转部分(转子)上装设电枢铁芯。定子与转子之间有一气隙。在电枢铁芯上放置了由A和X两根导体连成的电枢线圈,线圈的首端和末端分别连到两个圆弧形的铜片上,此铜片称为换向片。换向片之间互相绝缘,由换向片构成的整体称为换向器。换向器固定在转轴上,换向片与转轴之间亦互相绝缘。在换向片上放置着一对固定不动的电刷B1和B2,当电枢旋转时,电枢线圈通过换向片和电刷与外电路接通。

直流电机速度是由功率大小控制的,所以,它是由占空比决定的(当然,也要控制频率跟上)。 相关知识:

1、电机和减速器的扭矩(N·m)=电机功率(W)/(2*π*转速/60)。

2、占空比是指直流电机在一个通电与断电周期中其通电时间所占的比例,占空比越大,相对提供的功率越小。

3、直流电机三相绕组按照规律周期性通电,转速越高,通电频率越高。

4、增速过程(据第1、2、3条综合分析),电机扭矩不变时,占空比越小,提供功率越大,转速越高,电机绕组通电频率越高,导致扭矩有所增加,用以克服加速增加的阻力,直至平衡、稳速。

DRV8833基本介绍

结合有刷直流电机的原理,小车采用的是TI公司的DRV8833系列的有刷直流电机驱动芯片。DRV8833电机驱动芯片有两个全桥电路可以同时驱动两个直流无刷电机,其一个简单的PWM接口便可以方便地对控制器电路进行接口。 本实验设置DRV8833工作在PWM输入模式,其原理图如下图所示:

整体框架

相关文章:

eCAP超声波测距-ePWM电机调速

目录 eCAP超声波测距 整体框架 关键模块 实验效果 PWM电机调速 DRV8833基本介绍 整体框架 eCAP超声波测距 本实验所用的超声波HC-SR04模块如下图所示,左边为正面图,右边为反面图。 HC-SR04基本工作原理: (1)采…...

【K8s】Kubernetes 词汇表

微思网络 厦门微思网络 K8S认证工程师(CKA)备考与学习指南https://mp.weixin.qq.com/s/XsEVpU7dKnJDBopynWW3GQ K8S-CKA课程试听:Container 概述 词汇表 此术语表旨在提供 Kubernetes 术语的完整、标准列表。其中包含特定于 Kubernetes 的技术术语以及…...

高级java每日一道面试题-2024年10月20日-数据库篇[Redis篇]-Redis为什么是单线程的?

如果有遗漏,评论区告诉我进行补充 面试官: Redis为什么是单线程的? 我回答: Redis的单线程模型 Redis在6.0版本之前的设计是基于单线程模型的,这意味着Redis的网络IO和键值对数据的读写操作是由单个主线程来完成的。这种设计选择主要是出于以下几个原因&#x…...

SW-LIMS在化妆品行业稳定性试验中的应用

化妆品的稳定性是提供产品相关质量安全和潜在安全风险评价的一个重要数据来源,能为产品的安全性评估以及安全性预期提供佐证,通过设置产品保质期的边界和相关内容也能为化妆品上市后的监管提供依据。 通过稳定性试验,可以发现化妆品中可能存在的有害物质,避免这些物质在使用过…...

vue 项目i18n国际化,快速抽离中文,快速翻译

国际化大家都知道vue-i18n 实现的,但是有个问题,就是繁杂的抽离中文字符的过程,以及翻译中文字符的过程,关于这个有些小工具可以希望可以帮到大家 1.安装vue-i18n npm i vue-i18n8.22.22.ElementUI多语言配置 在src目录下创建…...

java--多态(详解)

目录 一、概念二、多态实现的条件三、向上转型和向下转型3.1 向上转型3.2 向下转型 四、重写和重载五、理解多态5.1练习:5.2避免在构造方法中调用重写的方法: 欢迎来到权权的博客~欢迎大家对我的博客提出指导这是我的博客主页:点击 一、概念…...

windows DLL技术-DLL概述

动态链接库 (DLL) 是一个模块,其中包含可由另一个模块 (应用程序或 DLL) 使用的函数和数据。 DLL 可以定义两种类型的函数:导出函数和内部函数。 导出的函数旨在由其他模块调用,以及从定义它们的 DLL 中调用。 内部函数通常只能从定义内部函…...

C++ —— 实现一个日期类

目录 一. 对日期类的介绍 二. 实现日期类 1. 运算符重载 2.日期类实现代码 一. 对日期类的介绍 通过对类和对象(这里链接是类和对象的介绍)的学习,类就是一种模型一样的东西,是对象一种抽象的描述。所以实现日期类&#xff0…...

Java全栈经典面试题剖析5】JavaSE高级 -- 集合

目录 面试题3.18 Java中有多少种数据结构,分别是什么? 面试题3.19 List、Set和Map的区别? 面试题3.20 List遍历方式有多少种 面试题3.21 Arraylist,Vector和Linkedlist 的区别 面试题3.22 Collection和Collections的区别 面试…...

python中如何获取对象信息

目录 一、获取对象类型 二、使用isinstance()函数 三、使用dir()函数 四、使用对象的__dict__属性(适用于大多数自定义对象) 五、使用文档字符串(__doc__属性)获取对象的文档信息 一、获取对象类型 使用type()函数&#xff…...

逐行讲解transformers中model.generate()源码

目录 简介输入程序model.generate()输入参数1. 创建生成参数对象 generation_config2. 初始化部分输入参数3. 定义模型输入4. 定义其他模型参数5. 准备 input_ids6. 准备 max_length7. 确定生成模式8. 准备 logits 处理器9. 准备 stopping 处理器10. 执行生成 self._sample1. 先…...

小白对时序数据库的理解

一、什么是时序数据库? 时序数据库(Time Series Database,TSDB)是一种专门用于存储、处理和分析时间序列数据的数据库管理系统。时间序列数据是按时间顺序记录的数据,通常由各种设备和传感器生成,例如智慧…...

打开游戏提示丢失(或找不到)XINPUT1_3.DLL的多种解决办法

xinput1_3.dll是一个动态链接库(DLL)文件,它在Windows操作系统中扮演着重要的角色。该文件作为系统库文件,通常存放于C:\Windows\System32目录下(对于32位系统)或C:\Windows\SysWOW64目录下(对于…...

netty的网络IO模型

参考: 聊聊Netty那些事儿之从内核角度看IO模型...

电子木鱼小游戏小程序源码系统 带完整的安装代码包以及搭建部署教程

系统概述 在快节奏的生活中,人们越来越注重内心的平静与放松。电子木鱼小游戏小程序正是基于这一需求而诞生的,它将传统的木鱼文化与现代科技相结合,为用户提供了一个简单、方便、有趣的冥想与放松工具。通过敲击屏幕上的虚拟木鱼&#xff0…...

支付域——交易系统设计

摘要 交易是业务流转的基础,其中交易系统和订单系统的设计至关重要。交易系统需确保安全、高效与稳定。在设计时,要考虑支付方式的多样性及兼容性,保障资金流转的准确与安全。同时,应具备良好的风险控制机制,防范欺诈等风险。订单系统则负责记录和管理交易的全过程。需清…...

IBus 和 Fcitx 框架下的rime输入法引擎

Rime 输入法引擎 Rime(中州韵输入法引擎):这是一个跨平台的输入法引擎,支持多种输入法方案,如拼音、五笔、注音等。Rime本身不提供前端界面,它需要与输入法框架(如IBus或Fcitx)结合…...

Java基础-JVM

JVM构成部分 类加载系统 类加载子系统的作用是将磁盘中的.class文件加载到内存当中。工作过程如下: 加载:通过类全路径名获取二进制字节流;将这个二进制字节流代表的数存储构转化为方法区运行时数据结构;在内存生成一个代表该类的…...

集成学习:投票法、提升法、袋装法

集成学习:投票法、提升法、袋装法 目录 🗳️ 投票法 (Voting)🚀 提升法 (Boosting)🛍️ 袋装法 (Bagging) 1. 🗳️ 投票法 (Voting) 投票法是一种强大的集成学习策略,它通过将多个模型的预测结果进行组合…...

波浪理论、江恩理论、价值投资的结合

结合波浪理论、江恩理论和价值投资,需要理解这三种方法的核心原理和应用方式。下面详细解析如何将它们融合在一起,形成一个更全面的投资策略: 1. 基本概述 波浪理论:由艾略特提出,通过分析市场波动的五个上升浪和三个…...

别只盯着心跳了!CANopen主站用SDO还能配置这些关键参数(附PDO映射实例)

别只盯着心跳了!CANopen主站用SDO还能配置这些关键参数(附PDO映射实例) 在工业自动化领域,CANopen协议因其高可靠性和灵活性成为设备互联的首选方案之一。许多工程师对通过SDO(服务数据对象)配置心跳时间已…...

用STM32F411+LVGL+FreeRTOS做个小玩意:从零打造一个桌面级健康监测仪(附完整源码和PCB)

从零打造桌面级健康监测仪:STM32F411LVGLFreeRTOS全栈实战 在创客圈里,把一堆传感器和屏幕拼凑成能用的设备不算难事,但要做成能长期摆在桌面上、看着不违和的实用工具,完全是另一个维度的挑战。去年我用了三个月时间迭代了四版原…...

ROS2效率提升:用rqt可视化工具替代复杂命令行的5个场景

ROS2效率革命:5个必须用rqt替代命令行的实战场景 第一次在ROS2项目中使用命令行调试参数时,我盯着满屏的ros2 param list和ros2 service call输出,突然意识到自己正在用21世纪的技术复刻80年代的操作方式。这就是rqt可视化工具存在的意义——…...

若依框架多数据源实战:如何用@DataSource注解轻松切换MySQL主从库

若依框架多数据源实战:用DataSource注解实现MySQL主从库智能切换 当系统流量逐渐攀升,数据库的读写压力开始显现时,很多开发者都会面临一个关键决策:如何在保证数据一致性的前提下,有效分散数据库负载?若依…...

探索含简易撬棒电路crowbar的双馈风机Simulink仿真模型

【含有简易撬棒电路crowbar的双馈风机simulink仿真模型】 含过电压保护电路的双馈风机模型。 此模型中的撬棍(crowbar)不是使用 IGBT 或理想开关构建的。 通过改变转子侧变换器的参考电压,对撬棒电路的切入和切出进行建模。 控制策略是最常见…...

Arduino Nano与SSD1306实战:从静态位图到动态动画的完整实现

1. Arduino Nano与SSD1306 OLED屏入门指南 如果你手头正好有一块Arduino Nano开发板和SSD1306驱动的OLED屏幕,想要实现从静态图片显示到动态动画的效果,那这篇文章就是为你准备的。我最近在做一个智能家居项目时,正好用到了这个组合&#xff…...

RK3588部署MMPose模型踩坑实录:手把手教你解决ReduceL2算子溢出与精度丢失问题

RK3588部署MMPose模型实战:ReduceL2算子溢出问题的深度解析与手术级修复 当关键点检测模型的精度要求遇上边缘计算设备的硬件限制,RK3588平台上的MMPose部署往往会遭遇令人头疼的算子兼容性问题。其中ReduceL2算子的溢出问题尤为典型——它像一道无形的屏…...

【紧急通知】Python 3.14 JIT默认profile已触发AWS Lambda冷启动恶化阈值!立即执行这4项低成本开关校准

第一章:Python 3.14 JIT编译器冷启动恶化现象的紧急定性Python 3.14 引入的实验性 JIT 编译器(基于 pyjion 改进的 cpython-jit 后端)在首次执行高密度计算函数时,观测到显著的冷启动延迟激增——部分基准测试中延迟较 Python 3.1…...

嵌入式按键事件处理框架:高可靠消抖与复合操作状态机

1. Button库深度解析:面向嵌入式系统的高可靠性按键事件处理框架1.1 设计定位与工程价值Button库并非简单的GPIO电平读取封装,而是一个面向工业级嵌入式应用的状态感知型按键事件引擎。其核心设计目标是解决传统按键处理中长期存在的三大工程痛点&#x…...

微机原理实验一代码逐行精讲:从‘Hello World’到ASCII转换的底层逻辑

微机原理实验一代码逐行精讲:从‘Hello World’到ASCII转换的底层逻辑 当屏幕上跳出"Hello World!"时,很少有人思考这行文字背后究竟发生了什么。这段经典的汇编代码就像一扇门,推开它你将看到CPU如何与内存对话、中断服务程序如何…...