一款基于AVR单片机的控制系统,类PLC的。(从AVR论坛转过来的)
以下是转贴内容:由于时常接到用户要求开发单片机控制项目,为了简化工作,专门设计了一款基于AVR单片机的控制系统。
为了提高通用性,设计思想是模拟PLC,采用光藕隔离输入,继电器晶体管混合输出,适用大部分工业控制场合:
设计规范:
电源:适合工业标准的24V直流输入,带反接保护
8路输入:其中2路可以中断,2路可以使用模拟量
8路输出:4路大电流晶体管,其中一路可以PWM,另4路继电器输出,可以直接带市电负载
通信:RS485
为了简化使用时的开发工作,输入输出的功能预先写好子程序,使得使用变得简单快捷
使用实例:交通信号灯演示程序。
以下是完整的主程序文件,主c语言程序不要包含main(), 并且要使用大写BEGIN()函数,看头文件就明白了。
#include "EC0608RT.H"
void BEGIN(void)
{
if(LD_B(MW32, BIT6))OUT_Y6;
if(LD_B(MW32, BIT7))OUT_Y7;
STL
tmr1S = 15;
SET_STEP = 1;
S1
// 方向1绿灯状态
SET_Y0;
RST_Y2;
RST_Y4;
SET_Y5;
if(tmr1S == 0){tmr1S = 5; SET_STEP = 2;}
S2
if(timer_c2 >= 50)OUT_Y0;
if(tmr1S == 0){tmr1S = 2; SET_STEP = 3;}
S3
RST_Y0;
SET_Y1;
if(tmr1S == 0){tmr1S = 15; SET_STEP = 4;}
S4
// 方向2绿灯状态
RST_Y1;
SET_Y2;
SET_Y3;
RST_Y5;
if(tmr1S == 0){tmr1S = 5; SET_STEP = 5;}
S5
if(timer_c2 >= 50)OUT_Y3;
if(tmr1S == 0){tmr1S = 2; SET_STEP = 6;}
S6
RST_Y3;
SET_Y4;
if(tmr1S == 0){tmr1S = 15; SET_STEP = 1;}
SEND
MB = PORTB;
MB = PORTD;
MB = tmr1S;
MW = Cn;
MW = Cn;
MW = MADC;
return;
}
http://cache.amobbs.com/bbs_upload782111/files_10/ourdev_348283.jpg
PCB成品图 (原文件名:2008710651226955.jpg)
http://cache.amobbs.com/bbs_upload782111/files_10/ourdev_348284.jpg
原理图 (原文件名:20087106425256898.jpg)
完整工程文件,注意EC0608RT.h,好东西都在里面ourdev_348285.zip(文件大小:50K) (原文件名:一种基于AVR的控制系统.zip)
原理图PDF文件ourdev_348286.pdf(文件大小:35K) (原文件名:ec0808sch.pdf) 看了下硬件资源的使用,充分合理利用了每个IO资源,不错!借鉴下。 非常好!狂顶! 板凳 Mark
真漂亮 越看越漂亮,谁做的?
买两块玩玩.
有联系方式吗 Mark!有空我也做一个玩玩。 好东西!顶! 好东东,收藏 好东西,谢谢
编译成功只用到了--31% 不错的东东,谢谢 板子很漂亮 不知道和别的模块能不能通讯 这个东东不知是否通用在别的工业控制上。
比较感兴趣,列入自己开发计划中。 好东西
以后有机会再做 好东西,留个记号 我下了,,研究一下。。 很漂亮的东西~~~赞一个 很漂亮的东西
但电源部分没有做EMC处理,现场用不知道怎么样.
我加了EMC部分总感觉板子的电源部分不漂亮.矛盾中... 板子电源部分这么简单?那个24V输入稳定吗?有没有浪涌什么的? 谢谢顶一下,好东西呀! 楼主能给个原链接吗? Q1和Q9看不明白,在实物图上没有看到Q9 不知道这东西的稳定性、抗干扰性、EMC、EMI和PLC相比怎么样? 非常感谢 顶 今天偶然从TAOBO上搜到的
http://auction1.taobao.com/auction/item_detail-0db2-5bd3cc7f5561dcc346755a251c4b2071.jhtml?pm1=1 记号 有搞头,要是有上位机软件就好了
不错,顶!
http://www.sonxun.com/image/ads.gif 感谢大家的支持,更多的信息可以到我的网页www.deyunme.com查找。
欢迎大家提出宝贵意见。 不错 ma.....rk mark 学习一下plc 很好的资料 分享无价 mark mark 好东西,学习了. mark mark 谢谢分享,学习了 学习了。他的公司网址:http://www.deyunme.com/ mark 太漂亮了,感谢LZ! 顶一顶,收藏 正在做,正好可以参考,谢了 电路不错,刘明 留个记号 我正在制作一个文本和EPLC一体的东东,整理一下我会发布源码和原理图。 期待楼上的大作 马克 AVR控制系统 mark~:-):-) 好东西啊! deyuan 兄 对你的板子有意请问这板子的抗干扰性能如何?用来控制大电机行吗? 谢谢了。。。正桢民了解这个呢。。。 这样板子如果销量小于500/月,就没必要做成通用的。 谢谢分享 文本PLC一体机已经完成,先发布原理图部分让大家看一下。稍后我会发布文本固件和PLC固件。 mark.........
文本PLC一体机已经完成,先发布原理图部分让大家看一下。稍后我会发布文本固件和PLC固件。
没见固件,又被忽悠了 下来参考学习下前辈高伯作品,以备后用 点数太少了呢 不错学习了!!! mark.......................... 学习一下。设计的很养眼啊 留个记号 我就是AVR单片机带我学单片机的。没人带过。 谢谢分享,学习了
页:
[1]