北京科技大学物联网硬件课程设计——机器人系统、树莓派、STM32

本文介绍了脉宽调制(PWM)的基本原理及其在模拟信号数字化、LED亮度控制、舵机驱动和机器人运动关节单元中的应用。以树莓派GPIO控制LED灯为例,展示了如何通过调整脉冲宽度来实现模拟信号的精确控制。
摘要由CSDN通过智能技术生成

实验原理与算法分析:(课程内容的24

1、脉宽调制原理及应用

         PWM(脉冲宽度调制)是一种将模拟信号转换为数字信号的技术,通过对数字信号的高电平持续时间进行调节,实现信号的数字编码。占空比指的是高电平在整个工作周期中的时间比例,用来控制信号在0和1之间的表现值。例如,当占空比为50%时,高电平和低电平各占周期的一半时间,对外表现为0.5。如果希望LED以30%的亮度工作,只需让高电平时间占整个周期的30%,剩余70%时间为低电平,对外表现为0.3。这样,LED灯就能呈现出30%的亮度。

         通常用PWM端口进行使用,广泛应用在电力电子、音频应用、数字通信、LED照明、电机控制等领域。比如后面的运动关节单元控制也用到了。

2、机器人的运动关节单元控制

         舵机是一种简化的伺服电机,通过输入PWM信号控制旋转角度,适用于需要连续变化并保持角度的简单控制系统,如航模、遥控玩具和机器狗。舵机通常由保护外壳、控制芯片、小型直流电机、减速器齿轮组和位置检测单元组成。它的运动方式是绕轴摆动,常用于调整方向,类似于水手舵在海上调整船舶方向。当主控发出转动信号时,控制芯片驱动电机旋转,并通过减速器传递动力给输出轴的摆臂。位置检测单元反馈转动结果信号给主控进行反馈调节。舵机集成了电机、传感器和控制器,是一个高度集成、完整的伺服电机系统。

         它通过控制端口控制,应用在机器人、摄像机云台、自动门、船模等。

二、脉宽调制原理及应用

#!/usr/bin/python
# coding:utf-8
# led_breathe.py
# 树莓派GPIO控制外部LED灯呼吸,周期为4秒。
import time
import RPi.GPIO as GPIO

# GPIO初始化
LED = 33    # 外部led灯连接的树莓派PWM端口号,可根据需要调整
GND = 34    # 接地的端口
period = 4   # 呼吸周期
GPIO.setmode(GPIO.BOARD)   # 初始化GPIO引脚编码方式
GPIO.setup(LED, GPIO.OUT)  # 初始化GPIO引脚设置
p = GPIO.PWM(LED, 50)  # 引脚=LED 频率=50Hz
p.start(0)
print("PWM控制呼吸灯开始,端口号为%d,周期为%d秒。" % (LED, period))
try:    # try和except为固定搭配,用于捕捉执行过程中,用户是否按下ctrl+C终止程序
    while 1:
        for dc in range(0, 101, 1):
            p.ChangeDutyCycle(dc)
            time.sleep(period / 200)
        for dc in range(100, -1, -1):

树莓派、STM32报告:基于树莓派的xx服务系统
一、需求分析

二、技术现状调研

三、系统功能和技术特点

四、......↓↓↓

https://mbd.pub/o/bread/ZpWYmZZy

  • 6
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值