首页 动态 版块 商城 我的
 退出
游客  
等级:
金币:
经验值:

震动马达 直流震动器 马达报警模块原理使用资料

  27 
 0
 4
HoyAnGx   YDXHOO 

一:震动马达介绍

此款震动模块采用MOS管驱动,可以直接通过输入引脚给一个高电平信号来驱动它震动,也可以使用PWM信号控制马达的震动强度频率等,此模块可以方便的完成电信号到机械震动感的转换适用于震动感互动产品的制作,可穿戴智能设备震动提醒等


模块参数:

额定电压:5.0VDC

工作电压:3.0 - 5.3VDC

额定转速:最小9000转每分

额定电流:最大60毫安

起动电流:最大90毫安

启动电压:DC3.7V

绝缘电阻:10MOHM

Image

二:硬件连接

1. 用5v电源直接驱动

按下图的方式接线,VCC接正极,GND接负极, IN信号也接在正极上,就可直接驱动它震动

Image

由于用5V电池或者5V充电器直接驱动该模块。我们是没办法控制震动的时间强度!如果要实现这一功能需要用单片机或者开发板写个程序来控制震动马达的时间强度。

2. 使用单片机编程驱动(以树莓派pico为例)

按下图,VCC正极接开发板3v正极,GND负极接开发板GND负极。 IN信号接开发板GP1引脚。

我们就可以写个程序去控制GP1引脚输出高电平时间从而调整震动时间,比如输出高电平10秒。那么震动模块也就震动10秒。


Image

二:Python例程代码

# 导入Pico的引脚控制模块和时间模块
from machine import Pin
import time

# 初始化GP1引脚为输出模式
gp1_pin = Pin(1, Pin.OUT)

try:
    # 将GP1引脚设置为高电平
    gp1_pin.value(1)
    print("GP1已输出高电平,将持续10秒...")
    
    # 保持高电平10秒(time.sleep的单位是秒)
    time.sleep(10)
    
    # 10秒后将GP1引脚设置为低电平(停止输出高电平)
    gp1_pin.value(0)
    print("10秒已到,GP1已恢复低电平")

except KeyboardInterrupt:
    # 处理手动终止(如按Ctrl+C)的情况,确保引脚恢复低电平
    gp1_pin.value(0)
    print("程序被手动终止,GP1已恢复低电平")


可直接复制上述代码粘贴到树莓派Pico编程环境中使用,从代码中我们可以看到GP1引脚设置高电平输出,由GP1引脚驱动震动模块。



上述代码解析

  1. 1.模块导入:
  2. from machine import Pin:导入 Pico 的引脚控制核心模块,用于配置和控制 GPIO 引脚
  3. import time:导入时间模块,用于实现延时功能
  4. 2.引脚初始化:Pin(1, Pin.OUT) 表示将 GP1 引脚设置为输出模式(Pin.OUT),只有输出模式才能主动输出高 / 低电平
  5. 3.高电平输出:gp1_pin.value(1) 中,1 代表高电平(3.3V),0 代表低电平(0V)
  6. 4.延时 10 秒:time.sleep(10) 让程序暂停执行 10 秒,期间 GP1 保持高电平
  7. 5.异常处理:try-except 块确保即使你手动终止程序(比如按 Ctrl+C),GP1 也会恢复低电平,避免引脚一直处于高电平状态


总结

核心逻辑:通过Pin模块初始化 GP1 为输出模式,value(1)设高电平,time.sleep(10)延时 10 秒,再value(0)恢复低电平。

异常处理:加入try-except确保程序终止时引脚状态可控,避免硬件异常。当然我们如果使用PWM信号去控制GP1引脚也是一样的逻辑。



标签:
作者签名:    楼主  2026-03-09 20:16:34
回复列表
Powered by YDXHUO _VERSION
© 2017-2026 跃动芯火版权
您的IP: 216.73.216.38 , 2026-03-13 16:08:42
Powered by YDXHUO _VERSION
© 2017-2026 跃动芯火版权
(4) 分享
分享

请保存二维码或复制链接进行分享

取消
已有0次打赏