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

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

3天内不再提示

Arduino 2合1模型火车控制器的制作教程

454398 来源:wv 2019-10-12 11:13 次阅读

步骤1:脉宽调制(PWM) )

Arduino 2合1模型火车控制器的制作教程

对于那些不熟悉PWM的人来说,它并不像听起来那样可怕。对于我们简单的电机控制应用程序而言,它真正的意思是生成一定频率的方波,然后更改占空比。占空比定义为输出与波形周期相比为逻辑高电平的时间比率。您可以在上图中清楚地看到,顶部波形为10%占空比,中间波形为50%占空比,底部波形为90%占空比。每个波形上覆盖的虚线表示电机看到的等效直流电压。鉴于Arduino具有内置的PWM功能,生成这种类型的DC电机控制确实非常简单。使用PWM的另一优点是,它有助于防止电动机在使用直直流电时可能发生的突然启动。 PWM的一个缺点是有时在PWM的频率下会听到来自电动机的声音。

步骤2:硬件

第一张图片显示了开关和LM298电机驱动器模块的Arduino连接。 Arduino内部有弱上拉电阻,因此开关不需要上拉电阻。方向开关是一个简单的SPST(单刀单掷)开关。油门和制动开关显示为常开,瞬时接触按钮。

第二张图显示了蓝牙模块和LM298电机驱动器模块的Arduino连接。蓝牙TXD输出直接连接到Arduino RX串行输入。

第三张图片是L298N双H桥模块。 LM298模块具有一个板载5伏调节器,可通过跳线将其启用。 Arduino和蓝牙需要+5伏特,但我们需要+12伏特来驱动电机。在这种情况下,我们将+12伏特施加到L298N的“ + 12V电源”输入,我们将保留“ 5V使能”跳线。这允许5伏调节器输出到模块上的“ +5功率”连接。将其连接到Arduino和蓝牙。别忘了将+12输入和+5输出的接地线连接到模块“电源GND”。

我们希望电机的输出电压根据产生的PWM变化。 Arduino,而不仅仅是完全打开或关闭。为此,我们从“ ENA”和“ ENB”上移除跳线,并将我们的Arduino PWM输出连接至模块上的“ ENA”。请记住,实际的使能引脚是最靠近板边缘的引脚(“输入”引脚旁边)。每个使能的背面引脚为+5伏,因此我们要确保不连接该引脚。

模块上的“ IN1”和“ IN2”引脚分别连接到各自的Arduino引脚。这些引脚控制电机方向,是的,有充分的理由让Arduino控制它们,而不是简单地将开关连接到模块。

第3步:蓝牙模块

此处显示的图片是蓝牙的典型图片可用模块。在寻找要购买的产品时,您可以搜索“ HC-05”和“ HC-06”。两者之间的差异在于固件,通常是板上的引脚数。上图是HC-06模块的图片,带有简化的固件,仅允许进行非常基本的配置。它也被设置为“从属”蓝牙设备。简单来说,这意味着它只能响应来自“主”设备的命令,而不能自行发出命令。 HC-05模块具有更多配置可能性,可以设置为“主”设备或“从”设备。 HC-05通常具有六个插针,而不是上面为HC-06所示的四个插针。 State引脚并不是很重要,但是如果要进行任何配置,则需要Key引脚(有时会使用“ EN”之类的其他名称)。通常,如果您可以使用默认的9600波特率,并且不需要为模块指定具体名称,则无需对模块进行任何配置。我在几个项目中都使用了这些项目,因此我要相应地命名它们。

配置蓝牙模块需要您购买或构建RS-232串行端口USB端口的接口。我不会在这篇文章中介绍如何构建一个,但是您应该可以在网上找到信息。或者只是购买一个接口。配置命令使用的AT命令有点像过去电话调制解调器中使用的命令。我在此处随附了一个用户手册,其中包含每种模块类型的AT命令。要注意的一件事是HC-06需要大写命令,并且命令字符串必须在1秒内完成。这意味着某些较长的字符串(例如更改波特率)将需要剪切并粘贴到终端程序中,或者您需要设置要发送的文本文件。仅当您尝试发送配置命令时,才需要大写。常规通信模式可以接受任何8位数据。

步骤4:软件

对于手动版本和蓝牙而言,该软件都非常简单版。要选择蓝牙版本,只需取消对“ #define BT_Ctrl”语句的注释即可。

当我编写PIC代码时,我尝试使用PWM频率并最终稳定在500 Hz。我发现如果频率太高,则LM298N模块无法对脉冲做出足够迅速的反应。这意味着电压输出不是线性的,可能会发生较大的变化。 Arduino内置了PWM命令,但它们仅允许您更改占空比而不是频率。幸运的是,该频率约为490 Hz,因此足够接近我在PIC上使用的500 Hz。

火车油门的“特征”之一是具有加速和制动的动量感模拟真实火车的工作方式。为此,在软件的手动版本的循环中插入一个简单的时间延迟。使用所示的值,从0到12伏或从12伏回到零大约需要13秒钟。可以很容易地将延迟更改为更长或更短的时间。动量无效的唯一情况是更改方向开关。为了保护起见,只要更改此开关,PWM占空比就会立即设置为0%。实际上,这使得“方向”开关也可以用作紧急制动器。

为确保立即处理“方向”开关,我将其代码放入了中断处理程序中。这也使我们可以使用“更改时中断”功能,因此更改从低到高还是从高到低都没有关系。

该软件的蓝牙版本使用单字母命令来启动前进,倒车,刹车和油门功能。实际上,收到的命令将替换手动开关,但会导致相同的响应。我用于蓝牙控制的应用程序被Next Prototypes称为“蓝牙串行控制器”。它使您可以配置虚拟键盘并为每个按键设置自己的命令字符串和名称。它还允许您设置重复频率,因此我将“制动”和“油门”按钮设置为50ms,以提供约14秒的动量。我禁用了“前进”和“后退”按钮的重复功能。

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

    关注

    112

    文章

    16151

    浏览量

    177219
  • Arduino
    +关注

    关注

    187

    文章

    6461

    浏览量

    186563
收藏 人收藏

    评论

    相关推荐

    如何选择合适的PID控制器

    在工业自动化领域,PID控制器因其简单、高效和广泛应用而备受青睐。PID代表比例(Proportional)、积分(Integral)和微分(Derivative)三个控制作用,它们共同作用于系统
    的头像 发表于 11-13 14:34 261次阅读

    位移传感火车轨道上的应用

    火车轨道是铁路交通系统的重要组成部分,监测和控制其安全运行至关重要。在火车轨道的管理和维护中,位移传感发挥着重要作用。这些传感将机械位移
    的头像 发表于 10-09 15:56 146次阅读

    国产控制器厂家 整车控制器 以太网控制器 CAN控制器 国产化替代

    控制器
    长沙硕博电子科技股份有限公司
    发布于 :2024年09月03日 09:15:51

    车载智能控制器 工程机械控制器 CAN总线控制器 硕博电子 #控制器 #can总线 #国产化替代

    控制器总线
    长沙硕博电子科技股份有限公司
    发布于 :2024年08月29日 10:43:57

    MSP430G2x01-Q1 MSP430G2x11-Q1混合信号微控制器数据表

    电子发烧友网站提供《MSP430G2x01-Q1 MSP430G2x11-Q1混合信号微控制器数据表.pdf》资料免费下载
    发表于 08-06 09:49 0次下载
    MSP430G<b class='flag-5'>2x01-Q1</b> MSP430G<b class='flag-5'>2x11-Q1</b>混合信号微<b class='flag-5'>控制器</b>数据表

    控制器的主要作用是指什么

    (Controller)是一种用于实现对被控对象的控制作用的设备或装置。它根据被控对象的输入信号和预定的控制规律,通过计算和处理,产生相应的输出信号,以实现对被控对象的控制控制器的主
    的头像 发表于 06-30 10:39 2884次阅读

    工业控制器制作与数学的关系

    数学在工业控制器设计中的应用 工业控制器的设计涉及到多个方面,包括硬件设计、软件设计、系统架构设计等。在这些设计过程中,数学发挥着关键作用。 1.1 硬件设计中的数学应用 工业控制器的硬件设计主要
    的头像 发表于 06-16 14:34 481次阅读

    移动机械控制器 车载智能控制器 CAN总线控制器

    控制器机械
    长沙硕博电子科技股份有限公司
    发布于 :2024年06月13日 17:02:51

    PID控制器与PWM控制器的区别

    在工业自动化和控制系统设计中,PID控制器(比例-积分-微分控制器)和PWM控制器(脉冲宽度调制控制器)是两种常用的
    的头像 发表于 06-05 18:25 2677次阅读

    如何用Arduino制作一个简易自动喂鱼

    制作硬件电路了。 第2步:电路图和程序 我们可以将电路分为两部分,第一部分是步进电机,另一部分是超声波传感。 将步进电机连接到驱动,然后根据下面的说明将驱动
    发表于 03-28 11:25

    介绍一款集成微控制器的的2.4G封芯片—XL2407P

    XL2407P芯片是工作在2.400~2.483GHz世界通用 ISM 频段,集成微控制器的的 2.4G封芯片。
    的头像 发表于 03-15 16:21 661次阅读
    介绍一款集成微<b class='flag-5'>控制器</b>的的2.4G<b class='flag-5'>合</b>封芯片—XL2407P

    如何制作自己的Arduino电容计

    在这个项目中,您将学习如何制作自己的Arduino电容计(测量电容器的值,范围从pF到1000的uF)。一般来说,电子爱好者喜欢设计自己的小工具而不是购买。在这个项目中,我们使用两种电容测量方法,即
    的头像 发表于 02-25 15:10 1439次阅读
    如何<b class='flag-5'>制作</b>自己的<b class='flag-5'>Arduino</b>电容计

    如何使用Arduino制作智能垃圾箱

    在这个项目中,我将向您展示如何使用Arduino制作智能垃圾箱,当您带着垃圾接近时,垃圾箱的盖子会自动打开。
    的头像 发表于 02-11 12:22 2817次阅读
    如何使用<b class='flag-5'>Arduino</b><b class='flag-5'>制作</b>智能垃圾箱

    保隆科技智能悬架控制器项目正式通过ASPICE CL2国际权威评估

    1月3日,保隆科技智能悬架控制器项目正式通过ASPICE CL2 国际权威评估。
    的头像 发表于 01-05 11:29 532次阅读

    Arduino制作循迹小车教程

    Arduino制作循迹小车完全教程
    发表于 01-05 11:09 4次下载