pwm

USB电扇无刷电机改装

陌路散爱 提交于 2021-02-20 04:58:57
现在USB电扇已经很常见了,网上随便可以低价买到。里面的电机分为有刷和无刷两种。我拆过的有刷USB电扇都非常劣质,里面的电机貌似是旧DVD机的拆机货;而无刷也有优劣之分,有的硅钢片非常少,铜线也细。这种电扇实在是太疲软了,不爽啊。必须要改装!我挑了好久,找到一个质量感觉还可以的电机拿来改装,分享一下改装过程。 因为我之前做了一些实验,把电机和电路板搞完了,所以本文的图片都是改装后的电机,不过不影响原理的理解。 所有USB电扇里无刷电机都是双相无刷电机,用一个霍尔元件换向,电机原理参考 这里 。改装之前最好了解电机工作原理,不然出了问题不知道怎么解决。 第1步,拆开电机。 看一下电机背面,会发现电机转子的转轴上有一个卡扣,用镊子把卡扣拆除。 卡扣拆掉后,就可以把转子拔出来了,注意卡扣很小,不要弄丢。 可以看到霍尔元件和4股铜线头连到电路板上,其中2股并在一起,共3个焊点。(我这图里的电机是改装以后的,只看见3根铜线,实际上刚拆的时候是4根) 第1.5步,电机原理的一点补充。 这里要靠蛮力把定子从塑料座上拆下来,挺费劲的,建议戴上手套,避免硅钢片把手划伤。 我改装后的电路板图片放在后面,有点乱,不过没有关系,电路板不重要,不同的电机电路板的画法是不一样的,只看我这块电路板没有参考价值,要理解原理。 之前的电机原理参考链接说明了电机的运行原理,但是没有电路原理

MicroPython实战之TurnipBit开发板旋转按钮控制脱机摆动

我的梦境 提交于 2021-02-18 06:15:22
一、实验目的: ?学习在PC机系统中扩展简单I/O 接口的方法 ?学习TurnipBit拼插编程 ?了解舵机工作原理 ?学习TurnipBit扩展板舵机和旋转按钮接线方式 二、所需原器件: ?TurnipBit一块 ?TurnioBit扩展板一块 ?杜邦线若干 ?usb数据线一条 ?舵机一个 ?旋转按钮一个 三、实验原理: 1. 舵机的组成与参数 舵机,又称伺服马达,是一种具有闭环控制系统的机电结构。舵机主要是由外壳、电路板、无核心马达、齿轮与位置检测器所构成。 其工作原理是由控制器发出PWM(脉冲宽度调制)信号给舵机,经电路板上的IC处理后计算出转动方向,再驱动无核心马达转动, 透过减速齿轮将动力传至摆臂,同时由位置检测器(电位器)返回位置信号,判断是否已经到达设定位置,一般舵机只能旋转180度。 舵机的接线 舵机有3根线,棕色为地,红色为电源正,橙色为信号线,但不同牌子的舵机,线的颜色可能不同。 舵机的控制原理 舵机的转动的角度是通过调节PWM(脉冲宽度调制)信号的占空比来实现的。 占空比: 1.指高电平在一个周期之内所占的时间比率。 2.正脉冲的持续时间与脉冲总周期的比值。例如:正脉冲宽度1μs,信号周期10μs的脉冲序列占空比为0.1。即:脉冲的宽度除以脉冲的周期称为占空比。标准PWM(脉冲宽度调制)信号的周期固定为20ms(50Hz),理论上脉宽分布应在1ms到2ms之间

电机控制好工具

守給你的承諾、 提交于 2021-02-17 19:46:57
电机的控制历来都是一个难点,在学校里学习时学生的难点,在工作中也是工程师的难点,我们曾经给大家介绍过一些电机的知识,因为手上刚好有一台 NXP 的高压电机控制平台,今天我们来看看 NXP 推出的电机控制高压平台,适用于三相感应电动机 (ACIM) ,直流无刷电动机 (BLDC) ,永磁同步电动机 (PMSM). 配合 kinetis KV 系列 MCU 可以轻松实现高精度电机控制。 这东西,官网的价格 5000+ 很贵,但是自己做要不了这么高成本,但是对工程师要求比较高,控制板我们用 KV46 控制器 并配合电机监控调试工具 freeMaster , 可以轻松实现电机从驱动到监控的一站式环境开发。 软件开发环境我们用 IAR ,可以到官网下载电机开发的软件包进行评估和学习。做电机控制一定要注意安全,因为涉及到高压部分。 这些参考资料和制版文件都是可以下载到,对电机控制感兴趣的同学可以去看看。 因为电机控制涉及到控制器大量的外设,需要掌握 PWM , ADC, UART, TIMER, 还有一些电机控制的专有算法,滤波,坐标变换以及反变换, PI 调节等,对功率电路也要有一定了解,熟悉常用功率管的工作特性,像 IGBT, MOSFET, IGCT 等。所以说做电机控制基本上把你大学相关的课程都涉及到了。随着工业 4.0 时代的到来,大量电机的智能控制也提到工程师面前,掌握好基础

AMS5601的ardunio和STM32驱动开发

纵饮孤独 提交于 2021-02-16 17:59:16
AMS5601的ardunio和STM32驱动开发 本文有 麦粒电子 撰写,并提供相应产品服务。 前言 目前ams关于磁编码芯片用的比较多的可能是ams5600,能够输出pwm信号,电压信号以及I2C通信数字读取。这款芯片目前在市面上也比较容易买到,价格相对也便宜。 有需要的AS5600模块可以点击链接了解。 但是在编码器应用中,尤其在在电机应用。对编码器的输出信号还有一种A、B、Z相对信号的方式。在这种情况下ams5600绝对值位置检测显得就不能满足要求。由此,我们把目光注意到了ams5601。这款芯片功能和ams5600一脉相承,只是多了一个A、B向输出的类型和按钮检测。 简介 AS5601是一个12bit精度的磁编码器芯片,能够输出增量AB信号,iic信号,push信号。引脚信息如下图所示。 下图为本文使用的** as5601模块 ** 值得注意的是as5601内部有给LDO稳压芯片,所以其可以有2种电压操作模式(5V和3.3V),相应的电路图如下图所示。可根据自己的情况选择。 开发 准备:径向圆形磁铁;ardunio开发板;as5601模块;杜邦线若干。 1.将控制板利用杜邦线连接as5601的相应IIC,AB,电源等接口。 2.圆形磁铁放置再AS5601芯片正上方,最远距离为3mm,当然如果磁铁磁性够强,也可以更远。 3.编写ardunio驱动代码。如下图所示

什么是自举电路

穿精又带淫゛_ 提交于 2021-02-14 12:54:22
MOS管自举电路工作原理及升压自举电路结构图 自举电路 自举电路也叫升压电路,是利用自举升压二极管,自举升压电容等电子元件,使电容放电电压和电源电压叠加,从而使电压升高.有的电路升高的电压能达到数倍电源电压。 MOS管自举电路原理 举个简单的例子:有一个12V的电路,电路中有一个场效应管需要15V的驱动电压,这个电压怎么弄出来?就是用自举。通常用一个电容和一个二极管,电容存储电荷,二极管防止电流倒灌,频率较高的时候,自举电路的电压就是电路输入的电压加上电容上的电压,起到升压的作用。 自举电路只是在实践中定的名称,在理论上没有这个概念。自举电路主要是在甲乙类单电源互补对称电路中使用较为普遍。甲乙类单电源互补对称电路在理论上可以使输出电压Vo达到Vcc的一半,但在实际的测试中,输出电压远达不到Vcc的一半。其中重要的原因就需要一个高于Vcc的电压。所以采用自举电路来升压。 常用自举电路(摘自fairchild,使用说明书AN-6076《供高电压栅极驱动器IC 使用的自举电路的设计和使用准则》)the boost converter,或者叫step-up converter,是一种开关直流升压电路,它可以是输出电压比输入电压高。假定那个开关(三极管或者mos管)已经断开了很长时间,所有的元件都处于理想状态,电容电压等于输入电压。下面要分充电和放电两个部分来说明这个电路。

基于FPGA灰度图像的形态学膨胀算法的实现

谁说我不能喝 提交于 2021-02-12 04:27:49
基于 FPGA 灰度图像的形态学膨胀算法的实现 1 背景知识 腐蚀与膨胀是形态学滤波的两个基本运算,通过腐蚀和膨胀两种运算可以实现多种功能,主要如下: (1) 消除噪声; (2) 分割出独立的图像元素; (3) 在图像中连接相邻的元素; (4) 寻找图像中明显的极大值和极小值区域; (5) 求出图像的梯度。 图 1 腐蚀膨胀示意图 图 1 a 为大小为 448X425 像素的灰度级 X 射线图像; b 使用半径为 2 个像素的圆盘形结构元对图像的腐蚀结果; c 用相同的结构元对图像的膨胀结果。原图有 Lixi 公司提供。 1) 形态学滤波之膨胀 膨胀 (dialate) 就是求局部最大值的操作。 从数学角度来看就是将图像 f 和核(结构元) b 进行卷积的一个过程。 当 b 的原点位于( x,y )处时,用一个平坦的结构元 b 在( x,y )处对图像 f 的膨胀,定义为图像 f 中与 b 重合区域的最大值,即: 为了方便起见,将膨胀操作记为: (x,y) 表示当前输入图像的行列坐标; f(x,y) 表示坐标点( x,y )处的图像像素值; g(x,y) 表示坐标点( x,y )处的滤波结果; ( s,t )表示作用域。 2 matlab 仿真灰度图像的腐蚀与膨胀 Matlab 膨胀源码: %%image dilate clc clear all img_a = imread(

SLAM+语音机器人DIY系列:(四)差分底盘设计——1.stm32主控硬件设计

岁酱吖の 提交于 2021-02-12 03:51:07
摘要 运动底盘是移动机器人的重要组成部分,不像激光雷达、IMU、麦克风、音响、摄像头这些通用部件可以直接买到,很难买到通用的底盘。一方面是因为底盘的尺寸结构和参数是要与具体机器人匹配的;另一方面是因为底盘包含软硬件整套解决方案,是很多机器人公司的核心技术,一般不会随便公开。出于强烈的求知欲与学习热情,我想自己DIY一整套 两轮差分底盘 ,并且将完整的设计过程公开出去供大家学习。说干就干,本章节主要内容: 1.stm32主控硬件设计 2.stm32主控软件设计 3.底盘通信协议 4.底盘ROS驱动开发 5.底盘PID控制参数整定 6.底盘里程计标 1.stm32主控硬件设计 完整的 stm32 主控硬件包括:带霍尔编码器的直流减速电机、电机驱动、 stm32 单片机开发板等配件。 1.1. 带霍尔编码器的直流减速电机 (图 1 )带霍尔编码器的直流减速电机 要制作一台机器人底盘,需要一套完整的电机部件,就如图 1 中看到的一样,需要有轮胎、联轴器、减速箱、电机和编码器,具体选型可以参考这几个方面的因素: 轮胎: 直径越大,小车的越障能力越好,但会降低小车爬坡的马力; 联轴器: 选择跟轮胎与电机输出轴尺寸相匹配的型号; 减速箱: 减速比决定电机输出轴的扭矩,减速比越大,输出轴扭矩越大,但输出轴转速越慢; 电机: 一般是 12V 的电机,直流有刷简单易控制; 编码器:

avr timer1 16bit fast PWM

南楼画角 提交于 2021-02-10 23:13:09
问题 I am using an Atmega328p-pu. I am trying to use the timer 1 for both a 16 bit PWM as well as using the overflow inturrupt to increment a timer. My code is below, I also set the F_CPU to 8000000UL in the make file. I would like the to have a variable that counts up for a defined amount of time and then resets and continues. so far I would expect it to count up for 7.5 seconds. I believe I should have a clock frequency of 8 MHz, then with fast PWM with a 1 prescaler and ICR1 at 5000 I would

avr timer1 16bit fast PWM

主宰稳场 提交于 2021-02-10 23:04:08
问题 I am using an Atmega328p-pu. I am trying to use the timer 1 for both a 16 bit PWM as well as using the overflow inturrupt to increment a timer. My code is below, I also set the F_CPU to 8000000UL in the make file. I would like the to have a variable that counts up for a defined amount of time and then resets and continues. so far I would expect it to count up for 7.5 seconds. I believe I should have a clock frequency of 8 MHz, then with fast PWM with a 1 prescaler and ICR1 at 5000 I would

【STM32H7教程】第43章 STM32H7的DMA应用之双缓冲控制任意IO和脉冲数控制

五迷三道 提交于 2021-02-10 17:51:59
完整教程下载地址: http://www.armbbs.cn/forum.php?mod=viewthread&tid=86980 第43章 STM32H7的DMA应用之双缓冲控制任意IO和脉冲数控制 本章教程为大家讲解定时器触发DMAMUX,控制DMA让GPIO输出PWM以及脉冲数的控制,实际项目中有一定的使用价值。 43.1 初学者重要提示 43.2 定时器触发DMA驱动设计 43.3 DMA板级支持包(bsp_tim_dma.c) 43.4 DMA驱动移植和使用 43.5 实验例程设计框架 43.6 实验例程说明(MDK) 43.7 实验例程说明(IAR) 43.8 总结 43.1 初学者重要提示 学习本章节前,务必优先学习第39章和42章,需要对DMAMUX,DMA的基础知识和HAL库的几个常用API有个认识。 相比定时器本身支持的PWM,这种方式更加灵活,可以让任意IO都可以输出PWM,而且方便运行中动态修改输出状态。 43.2 定时器触发DMA驱动设计 定时器触发DMAMUX,控制DMA让GPIO输出PWM的实现思路框图如下: 下面将程序设计中的相关问题逐一为大家做个说明。 43.2.1 定时器选择 使用DMA的话,请求信号都是来自DMAMUX2,而控制DMA做周期性传输的话,可以使用定时器触发,这样的话就可以使用DMAMUX的请求发生器功能,支持如下几种触发: