C语言编程实现pic单片机电动自行车双闭环控制
3星 · 超过75%的资源 需积分: 10 9 浏览量
更新于2024-09-13
收藏 82KB DOC 举报
本章节主要介绍了利用单片机(如PIC)控制电动自行车驱动系统的方案。该方案采用了C语言编程,强调了双闭环控制策略,以优化电机转速性能并限制电机最大电流。核心部分涉及到硬件配置与软件结构:
1. **硬件配置**:
- CCP(Capture Compare Peripheral)部件:CCP1用于PWM(脉冲宽度调制)输出,通过调整占空比来控制电机电压。CCP2则集成计时器TMR2、TMR1,用于精确的时间间隔控制和中断处理,包括RB口电平检测,INT(中断)管理,以及通用I/O口的使用。
- 特定寄存器定义:如`DELAYH`和`DELAYL`用于延时处理,`speed`、`speedcount`等用于存储转速数据,`gcur`和`currenth`表示当前和最大电流值。
2. **软件编程**:
- 使用C语言编写程序,定义了一系列全局变量和标志位,如`p1`、`spe`等,用于控制不同的功能状态(例如电机速度控制、低电压保护等)。
- `INIT877()`子程序是初始化过程,它设置了PORTC口为输出模式,关闭所有MOSFET,以及配置PIE1寄存器以激活特定的中断和事件。
3. **双闭环控制**:
- 电流环和转速环是双闭环控制系统的关键,通过`CURA0X0a`和`CURB0X09`定义电流环的比例系数,`THL0X6400`为电流环的最大输出,确保电机电流在安全范围内。
- 转速环通过`SPEA0X1d`和`SPEB0X1c`设置比例系数,`GCURHILO0X0330`和`GSPEH0X67`分别定义最大给定电流和转速。
4. **保护机制**:
- 通过`TSON0X38`和`VOLON0X4c`定义了手柄开启和低电压保护的阈值,当电压低于`VOLOFF0X49`时,系统将自动关断以保护电池。
总结来说,这个方案是利用PIC单片机进行电动自行车驱动系统设计,通过双闭环控制算法优化电机性能,同时考虑到保护机制,确保系统的稳定性和安全性。编程实现包括硬件配置初始化和C语言程序编写,体现了单片机在电机控制领域的实际应用。
2024-12-01 上传
2024-12-01 上传
2024-12-01 上传
2024-12-01 上传
2024-12-01 上传
2024-12-01 上传
2024-12-01 上传
2024-12-01 上传
2024-12-01 上传
pic1650727278
- 粉丝: 0
- 资源: 1
最新资源
- Angular实现MarcHayek简历展示应用教程
- Crossbow Spot最新更新 - 获取Chrome扩展新闻
- 量子管道网络优化与Python实现
- Debian系统中APT缓存维护工具的使用方法与实践
- Python模块AccessControl的Windows64位安装文件介绍
- 掌握最新*** Fisher资讯,使用Google Chrome扩展
- Ember应用程序开发流程与环境配置指南
- EZPCOpenSDK_v5.1.2_build***版本更新详情
- Postcode-Finder:利用JavaScript和Google Geocode API实现
- AWS商业交易监控器:航线行为分析与营销策略制定
- AccessControl-4.0b6压缩包详细使用教程
- Python编程实践与技巧汇总
- 使用Sikuli和Python打造颜色求解器项目
- .Net基础视频教程:掌握GDI绘图技术
- 深入理解数据结构与JavaScript实践项目
- 双子座在线裁判系统:提高编程竞赛效率