01.本设计选用Arduino
开发板作为底板,需要设计配合的叠加板(扩展板);
02.PCB电路板制作关键点在原理图的制作、器件封装设计、PCB的布局布线;
03.原理图需要注意光耦隔离和电平的匹配问题,关键部位加入限流电阻;04.IGBT功率管的引脚与封装是否一致,引脚焊盘大小和间距是否正确;
05.IGBT功率管需要大电流,布线采用双层叠加布线,注意与小信号的隔离;
五。
单片机串口控制(Arduino)
PCB电路板制作完毕后,需要写微控制器程序。不同的单片机是工具的变化,关键是通过程序实现功能是一致的,主要的控制逻辑是一致的。
实现通过串口控制PWM输出,需要具备串口、PWM、字符串转换的知识点。串口需要启动接收中断来获取用户指令;用户的指令需要从字符串中截取并识别配置参数;得到的配置参数需要修改单片机的pwm输出。
下面通过arduino的代码来具体理解单片机的编程思想:
01.串口配置、模拟量PWM配置、串口中断配置;
02.串口接收中断函数,用回车作为指令结束符号标记,代表接收完成;
03.主程序查询接收是否完成,接收完成立即转换为模拟量数值(相当于调整pwm占空比),实现改变输出电压;
04.toInt()是数值字符串转换整数函数;
05.analogwrite是模拟量输出函数,内部原理是修改PWM的占空比来实现模拟电压调节;
06. IGBT功率管是接受单片机输出的不同占空比的电压,从而实现模拟量输出;String inputString = “”; // a string to hold incoming data
六。 上位机控制指令(
labview)
实现电脑控制单片机需要用到PC软件,通过串口助手可以方便的调试单片机硬件,若要实现更为复杂功能就要涉及到上位机软件的制作。
常用的上位机设计软件有C++、C#、VB等,对于电气电子类工程人员来说Labview编程软件比较适合,能够通过图形化编程快速实现功能。
下面通过图形化代码实现输出一个正弦变化的模拟量波形,主要知识点是串口的发送和中断接收。
具体代码如下(图形代码):
01.首先需要初始化配置串口,为防止上次忘记关闭串口出错,需要先关闭串口再配置;
02.根据Arduino程序得知,单片机是等待串口指令来进行的操作;
03.根据Arduino程序得知:发送指令定义是【数值+回车】,范围在0-255;
04.图形程序主旨是用while循环不停的发送指令数据,控制单片机输出模拟波形;
05.仿真波形函数可配置正弦频率,%drn是输出字符串格式转换功能块;
06.若需要获取单片机返回需要编写串口接收进程,可参考上图程序代码;
02.注意接收和发送只需要配置一次串口初始化即可,上图需要修改部分变动;
03.注意两个while循环相当于两个进程,需要添加同时停止条件,否则程序可能会导致不能关闭;
原作者:Dream_doing 千里优选教学基地