fengye5340-2725 发表于 2014-5-15 15:34:29

【枫叶分享】大家一起来学习STM32工业级控制板制作及开发

    在论坛上沉默了一段时间了,今天为大家分享一些自己的东西,希望对那些入门的“小白”工程师们有所帮助,那些精通STM32的高手和大侠们,也欢迎来交流和指导,并给我们的设计提出宝贵经验,真是不胜感谢!

   无论你是学生还是刚毕业的工程师,在进入工业控制领域的应用中,不可避免地要使用MCU进行控制板的硬件设计和软件设计。当今的MCU型号众多,层出不穷,让一些刚入此门的“攻城师”们有点无所适应,到底哪个MCU才是适合的。现在8位的51/STC/PIC/AVR仍然火热,MSP430越来越低功耗,ARM-MO/M3/M4内核更是红了半别天。在这么多型号中,找到适合自己的MCU还是要花费一些时间的。俗话说,“样样通,不如一样精”,MCU的原理都是一样的,当你花费很多时间去熟悉不同MCU型号开发的同时,还不如多拿出些时间来,专门研究一种或几种MCU型号,人的精力毕竟是有限的,对新手来说,同时精通几种MCU产品开发是很难的。因为应用场合的不同,比较好的方法是,在8位/16位/32位产品中,各自找一个代表性的产品进行深入研究。

   因为不同厂家的推广力度不同,现在在32位MCU应用中,比较热门的当属ST系列产品,ST产品M0/M3/M4更是型号众多,选择广泛,在硬件设计中,你不可能把花费几个月时间设计的控制板上的控制器型号轻易改变,这样的时间成本太昂贵了。因此,我们在选择ST控制器型号上,也是费了不少心思,最终选择了 一款STM32F103VCT6控制器芯片,这个引脚兼容STM32F107VCT6,100PIN,资源适合,速度够快,对于一般的工业控制应用足够了。

STM32工业级控制板硬件设计讲解

    我们在与非平台的摩尔吧上,发布了基于这个控制板的硬件讲解视频。 链接如下:现在课程是免费的,大家有感兴趣的,可以去观看
   http://www.moore8.com/courses/164#/course/164
STM32工业级控制板硬件简介:
   这个是控制板实物图片。
   
   
   

硬件资源:   
1、电源供电:12V-40V宽输入范围,带过压保护,过流保护。
2、两级供电方式:LM2575/LM2576DC-DC开关电源--5V输出,AMS117-3.3V-3.3V输出。
3、数字量输出:8路达林顿管ULN2803带光耦隔离输出,外部12-24V独立DC-DC芯片供电,每路IO驱动能力500mA。
4、模拟量输入:8路光耦隔离输入通道,每两路共用一地平面,带74HC245芯片驱动。
5、继电器输出:8路达林顿管ULN2803带光耦隔离输出,外部12-24V独立DC-DC芯片供电,带阻容电流吸收,每路最大4A电流,带自恢复保险。
6、主芯片:   100QFP封装的STM32F103VCT6。支持SWD方式下载及仿真调试。
7、板载一个蜂鸣器:采用2N7002 MOS管驱动。
8、板载RTC实时时钟,CR1220封装电池座。
9、板载 Fujitsu MB85RC04 铁电存储器 容量512字节。
10、板载RS232/RS485通信接线端子,方便外接扩展子板。
11、板载MORNSUN隔离电源模块:
    分为:5V输入, 带隔离5V/100mA输出
          24V输入,带隔离+-12V/200mA输出,外部端子引出。
12、LCD接口:
    带有FPC液晶屏接口,兼容RA8806 5.7英寸320*240工业级触摸屏,FSMC 8位-总线方式驱动
    带有40PIN TFT液晶屏接口,兼容目前常用ILI9320/ILI9341/SSD1289等液晶屏,FSMC 16位-总线方式驱动
13、引出6路PWM引脚及霍尔接口引脚,可以实现BLDC电机驱动及DAC输出
14、采用2路运放芯片:TI LMC6484A芯片。
    外部2.048V参考源:TILM4040A20芯片
    可实现两路0-10V模拟电压采集,两路0-200mA的电压采集。
15、外扩SPI总线,可以外接24bitADC,满足高精度数据采集应用。
16、采用工业级接线端子,引脚支持热插拔。

大家一起来学习计划:

    在这里,如果有对控制板感兴趣的,可以跟帖留言,想对板子保留那些功能,去掉那些功能,
增加那些功能(现在的板子成本很高!)打造一个属于自己的DIY硬件平台。我们修改后的板子,会将整体价格降至一个合理水平,然后打样PCB,大家可以自己购买元器件,进行焊接。
    作为爱板论坛的版主,我们支持论坛发展壮大!如果计划可行,PCB板子会有大家喜爱的爱板LOGO的

====================================================================================

2015年3月20日新增内容:
    看到有些朋友对板子感兴趣,很感谢大家的支持!这个板子14年9月份左右已经完成,下面是效果图:
   
   
   
   
   
    因考虑论坛网友以学生为主,板子器件资源较多,全部焊接完成,可能要超过百元,考虑到大家的经济能力,本版没有打样。后期会考虑制作一个简易的版本,将整体成本控制在100元以内。如果您对板子敢兴趣,想参与DIY计划,请在管管员 @小菜儿 处报个名,当人数积累到50人以上时,可以打样,来降低设计成本!
    再次感谢大家的支持!




按照xinxin老大的要求,我把在德仪上关于运放部分内容更新到此贴下,欢迎大家讨论:
====================================================================================

基于LMC6484A和LM4040A20的传感器电压调制电路实现

    在工业级应用中,我们需要处理各种各样的传感器信号,比如压力传感器,温湿度传感器、水位传感器、霍尔传感器和温度变送器等等。这些传感器目前常用的输出信号有4-20mA电流型,0-10V的电压输出。前者在处理时,需要额外增加芯片转换成电压,为电路增加一些成本,在非远距离传输中,后者则更有优势。在面对0-10V的电压信号采集时,是不能直接通过MCU进行采集处理的,因为目前常用的MCU供电一般是3.3V,最大支持的电压不能超过3.3V,这样的话就得用额外的电压调制电路实现,其中比较简单的实现方法就是利用运放芯片来实现,通过运放芯片将0-10V的电压转换为0-3.3V的电压,然后进入MCU的ADC进行采集并处理。下面是一个示意图:
      
      
在实现电压调整电路时,要考虑选择正确的运放芯片和外部参考源(一般这样的情况下,不建议使用MCU内部自带参考)。选择芯片时,要做综合考虑,成本是一个重要因素,TI有很多优秀的芯片,但价格高。经过半天时间,终于确定了芯片型号,这就是LMC6484A和LM4040A20这个2.048V的精密参考源。芯片详细介绍可以上官网上具体查看。
http://www.ti.com.cn/product/cn/lmc6484
http://www.ti.com.cn/product/cn/lm4040a20
LMC6484A是一款轨到轨的运放,SOIC14封装,可以双电源也可以单电源,在设计时,采用了3.3V单电源供电方式。LM4040A20是个微功耗并联电压参考,采用SOT-23封装,使用时仅在电源端串联一个限流电阻即可。下面是此电路调整部分的原理图:
这个是电源电路和参考源电路,注意要串接精密电阻,这里采用16K%1精度。

         

         这个是运放电路:

            

         此电路的电压计算公式如下:
      设输入电压为Vin,输出电压为Vout,参考源电压为Vref,则公式为:
            Vout= 1.2*Vref – 0.2*Vin,
在这里,我们用的Vref=2.048V,则
            Vout= 1.2*2.048-0.2*Vin= 2.4576 -0.2*Vin.
也就是,当Vin=0V时,Vout=2.4576V,当Vin=10V时,Vout=0.4576V,这样,利用此电路,就实现了0-10V的传感器电压信号到0-3.3V范围内的电压转换,剩下的交给MCU的ADC处理就行了。
      在设计电路板之前,采用了TINA仿真软件对电路进行了仿真,效果不错,下面是仿真截图:

      
      
      
      
         
      

    仿真结果跟理想计算公式得出的数据时一致的。在确认无任何问题后,我们设计了控制电路板,下面是对板载电压调整电路部分测试的图片。经过数据分析,理论设计与实际设计符合。

   

    图中采用了两片LMC6484A运放U13/U14,U16为电压参考源,整个阻容元件都采用了1%精度的贴片元件。上电后,测试电压参考源:

   

      Vref=2.0463V,计算一下精度:0.08%,手册上说是1%的精度,看来实际性能还要好,那个是保守的精度值,TI产品的确很给力!在确定好了参考源电压后,我们计算理论值就应该按照Verf=2.0463来算,就不是原来的2.048V,这样,电压计算公式变为:
         Vout= 1.2*2.0463-0.2*Vin= 2.45556 -0.2*Vin.
         利用信号源输出0-10V的电压对电路进行测试,
         下图,当Vin=0V时,输出Vout=2.4544V。理论值:V=2.45556V

         

         当Vin=3.62V时,Vout=1.7311V,理论值V=1.73156V。

            

          当Vin=10.07V时,Vout=0.4451V,理论值V=0.44156V。

         

         为了进行全面数据分析,将不同的电压进行输入,将采集到的数据值存在Excel表格中进行分析,见图:

         

         由此可见,最大误差基本控制在0.005V之内,是符合要求的。
         附件是此EXCEL表格。
         **** Hidden Message *****
         

小菜儿 发表于 2014-5-15 15:44:46

沙发支持fengye:lol板子很强大!

奋斗哥 发表于 2014-5-15 15:50:24

顶fengye大神,看视频去支持,:lol

fengye5340-2725 发表于 2014-5-15 15:54:57

xinxincaijq 发表于 2014-5-15 15:44 static/image/common/back.gif
沙发支持fengye板子很强大!

多谢xinxin老大支持!

fengye5340-2725 发表于 2014-5-15 15:55:38

奋斗哥 发表于 2014-5-15 15:50 static/image/common/back.gif
顶fengye大神,看视频去支持,

谢谢支持:handshake

hxz0123 发表于 2014-5-15 17:15:29

:lol帮顶,不错~

23—Fly 发表于 2014-5-15 17:43:59

支持啊,平常有做过工控

kk5290122 发表于 2014-5-15 19:42:23

板子不错,支持lz!!

斯内克 发表于 2014-5-15 21:49:21

这个很有意思,有兴趣参加
还没有正儿八经自己打过版
不知道学习计划包括一步步学习做工业级板卡么

乔哥 发表于 2014-5-16 06:41:31

这个好!!!!支持
页: [1] 2 3 4 5 6 7 8 9 10
查看完整版本: 【枫叶分享】大家一起来学习STM32工业级控制板制作及开发