打印

【现场直播】一个数字温控仪表的实现(能显示了)

[复制链接]
12143|83
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
原野之狼|  楼主 | 2009-12-16 20:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 原野之狼 于 2009-12-18 21:45 编辑

一、序言
     太原的天气真TMD冷,冻得我现在还不停的打哆嗦。更可恨的这里还没有任何征兆 停水停电停暖。昨儿个又下雪了,地上全是未化的积雪,还好比上次小些,上次下雪的时候俺还穿着网格状的鞋,交通瘫痪致使俺没法出去买鞋,所以直接把脚丫子冻坏了。后来天气好转俺打车出去一口气买了两双鞋回来,呵呵~~~:lol
     刚才吃完饭,超近道回屋子,不想地太滑,把俺给摔翻了,唉,人老了,不行啦。看来做任何事都不能走捷径啊。为了再次避免霉运袭来,俺决定在此发帖做点善事,以求得到苍天的怜悯和内心的安宁(话说俺最近也没干啥坏事呀)。
     在楼下吃饭时发现煤炉子的火又灭了,这是什么破炉子啊,一不注意火就灭了,风口子大点浪费能源,小点呢火又灭了,另外也不知道啥时候就把煤球给烧完了,或许是楼下那几个小子不好好干活,跑到电脑旁上QQ聊美眉去了!
     话说这几天俺也闲着,加工的板子订购的器件都还没有到,那俺就发挥下伟大的助人为乐的精神,替那几个小子DIY一个温控器,温度低了就报警提示该换煤球了或者该调风门了或者干脆自动鼓风。
     写到这里,我这浑身又发抖啊,多罗罗,寒风冻死我咯。我自己的屋子还是用泡沫和纸板糊的窗户呢,真是便宜那几个小子了。但想想俺应该为人民服务,那就忍着牙干吧。
     唉,似乎09年还没穿过“裤子”呢,希望本文能成此美梦吧。

相关帖子

沙发
古道热肠| | 2009-12-16 20:31 | 只看该作者
呵呵,支持DIY.

使用特权

评论回复
板凳
原野之狼|  楼主 | 2009-12-16 20:55 | 只看该作者
二、写些什么呢
    为了吸引各位观众的眼球,咱总得写点新奇的东西吧,要走差异化路线。既要有技术含量以免丢这工作好几年的脸面(话说俺也没工作几年尚属菜鸟而且更要命的是现在还失业了),又要有看点通俗易懂能引起观众认可。看来是有难度,那么我就认真写吧,写得不好的话各位请文明拍砖。
    实现基本功能那是必须的,就是要能测出温度来,还要能调节温度。这是大多数温控表的功能。
    当然,咱为了面子(唉,都是这面子害的),还得整些新元素。没有打草稿,凭着感觉写,俺就随口一说吧,各位可别太较真,具体效果还得看时间够不够以及水平够不够。
    第一、使用汇编、C以及C++三种语言混合编程来实现。
    第二、玩点OS之类的东东。
    第三、搞点UI(用户界面)之类的新招。
    第四、或许还能玩玩PID。
    第五、谈谈项目管理。
    目前就想起这么多,实际写了多少算多少。

使用特权

评论回复
地板
原野之狼|  楼主 | 2009-12-16 21:02 | 只看该作者
嘿嘿 古版真积极 谢谢支持哦~

使用特权

评论回复
5
因特网用户| | 2009-12-16 21:17 | 只看该作者
mark

使用特权

评论回复
6
yewuyi| | 2009-12-16 21:54 | 只看该作者
我不是不明真相的人民群众,路过围观一下就走。。。

使用特权

评论回复
7
原野之狼|  楼主 | 2009-12-16 21:57 | 只看该作者
本帖最后由 原野之狼 于 2009-12-16 22:01 编辑

三、项目管理
    先看几张图片吧,从我的电脑里截取的图片。
   
    图1 文件目录导航


图2 右键快捷菜单

    仔细看,你可能发现了有些不一样的地方,对了,她就是SVN。
    SVN何许人也?废话少说,先到她的站点去看一下,一分钟之后咱继续:
    http://www.subversion.org.cn/
    SVN是一个版本管理工具,用于管理文件的版本,主要是指代码文件。我现在用她来管理我的项目开发中涉及到的软件硬件文档等多种信息。
    如果你工作了好几年,还在用拷贝粘贴的方式来备份你的资料,然后被那些资料弄的一团糟的话,那么你应该考虑下你是否该用我介绍给你的方法来试一下?
    SVN的安装使用别问我,我也说不清楚,自己GOOGLE去。
    当然,版本控制工具有很多种,比如 VSS,CVS,SVN。简要比较一下:VSS是微软的一个工具,简单易用,如果个人用的话,用这个也不错,但如果是联网使用VSS,会有安全隐患;CVS俺不熟悉,用的比较广泛;很多开源项目都是采用SVN来做的,俺也就赶下潮流了选了她,SVN+APACHE搭建服务器,让你随时随地可以check in & check out你的资料。
     一个项目可能有很多人员参与,有项目经理、硬件组、软件组以及其他辅助人员。所以你的项目资料应该分门别类并设置不同的访问权限,这样便于项目组所有人员来协调工作。
     利用版本控制工具,然后再利用一些项目管理工具,便于项目经理科学有序的协调控制整个项目的进度。我曾经这样干过一回(仅仅一次,在小企业有些东西要推广不容易呀),然后很轻松的完成了整个项目,并且是提前完成了。截图为证:
     
     图3 项目进度安排
     本来是想在我的电脑上建立这个 数字温控仪 项目,让广大观众能切身体会下利用这些工具来做项目,但无奈的是俺这局域网的路由器管理比较严格,我没法让我的服务器对外提供访问,所以只好用文字来表述了。
     共享一个项目文件目录结构,并配有简要介绍:
      demo.rar (4.75 KB)

使用特权

评论回复
8
不亦心| | 2009-12-16 22:22 | 只看该作者
打酱油,看热闹

使用特权

评论回复
9
原野之狼|  楼主 | 2009-12-16 22:22 | 只看该作者
6# yewuyi
叶兄 俺也是看你写连载 所以受影响了 于是也硬着头皮咬着牙 豁出去了:lol

使用特权

评论回复
10
程序匠人| | 2009-12-16 22:27 | 只看该作者
哈哈,连载是我的最爱啊,给你加酷、高亮、置顶!

使用特权

评论回复
11
zyok| | 2009-12-16 22:28 | 只看该作者
色狼要打造史上最牛温控啊。。。:lol

使用特权

评论回复
12
zyok| | 2009-12-16 22:29 | 只看该作者
哈哈,连载是我的最爱啊,给你加酷、高亮、置顶!
程序匠人 发表于 2009-12-16 22:27

这个压力可给得不小啊..:lol

使用特权

评论回复
13
huangqi412| | 2009-12-16 22:54 | 只看该作者
;P   把小叶的路子学到家了

使用特权

评论回复
14
千古寸心| | 2009-12-16 23:02 | 只看该作者
严重支持!

使用特权

评论回复
15
原野之狼|  楼主 | 2009-12-16 23:22 | 只看该作者
四、需求分析
    需求分析是一个项目开展过程中非常重要的一个环节。这一环没有做好,接下来就有无数的乱起八糟的事情,你不得不一遍遍地修改,越改越乱,最后连自己都不知道改成啥样了,然后还得推到重来,甚至乎还得推到好几次,如果是团队开发,那就更加没法整了,你们都会崩溃的。郭德纲有个相声里说的挺有意思,说是把图纸拿反了,造烟囱却挖成了井。
    对于很多小企业,这个阶段相当地不规范,往往是由老板对技术人员随便一说,就让你去做吧,做出来再说,然后不满意,然后又继续改。但是做设计不是吃饭,哪有这么简单呢,每改一次都要人老命啊!这种情况该如何避免呢?那就是最好是用文字的方式来记录,空口无凭,立下字据为证。这样即使要改,那也有个说法了,进度慢是因为老板改需求了,不是你偷懒了,否则你是受了苦还在老板心中没有留下好影响,有苦说不出啊。本来这个需求是应该由客户来提的,一般来说你是没有机会接触到客户的,所以老板就是你的客户,老板的需求往往是比较朦胧的,所以作为研发人员的你应该把这个需求进行细化,然后从专业的视点来写一份需求说明书,由老板进行确认,然后你再进行设计。
    对于我们现在讨论的这个 温控仪表,需求还是比较明确的,毕竟是自己提嘛。
    现在整理一下(整理过程中我考虑了我现在手头上所拥有的器件),把需求的要点记录如下:
    1、设计成仪表的形式,外形尺寸96*96mm,深度124mm。
    2、采用两个显示窗,使用五位数码管,分别显示SV值和PV值。
    3、采用4个按键。
    4、测温范围0~100摄氏度,精度0.5摄氏度。
    5、采用回差式控温模式,扩展PID控温模式。
    6、有系统工作状态指示灯,用来显示输出大小。
    7、具有参数设置界面,能够调整SV值,小数点位数,工作模式。
    8、采用市电供电。
    实际的需求说明书还要复杂些,可以去参考一下软件工程之类的书,我这里就省略了若干。

使用特权

评论回复
16
原野之狼|  楼主 | 2009-12-16 23:32 | 只看该作者
谢谢各位的支持 你们的支持就是俺的动力呀

使用特权

评论回复
17
因特网用户| | 2009-12-16 23:47 | 只看该作者
再支持一下  我也装了SVN   不过一直没用  
我现在用syncbackse搞差异备份

使用特权

评论回复
18
原野之狼|  楼主 | 2009-12-17 00:20 | 只看该作者
五、系统设计
    我采用的是原来一套旧的仪表板子,加以改造来实现这几个简单的功能。但是对于系统设计这一块,俺再啰嗦几句。系统设计包括整个系统的工作原理,硬件实现以及软件实现。在一个企业的技术团队之中,系统设计才是最挣钱的岗位,有可能系统设计师不干啥实际工作,不画电路板不写程序,但是人家就是牛X,人家定的方案就是可行,所以钱拿得多也是合情合理的,要是让我这种菜鸟去定方案,有可能就把大家都带阴沟里去了。对于目前我们讨论的这个温控仪表系统工作原理是比较简单的,也就体现不出系统设计师的水平了。这两天在琢磨一些电磁无损检测(NDT)方面的东东,这个东西的系统工作原理就比较复杂,力不从心啊,这个时候就能体现系统设计师的水平了。唉,扯远了,对不住了~
      对于我们现在这个系统:
    1、仪表壳,到仪表壳厂家去找就是了,GOOGLE长河机箱。
    2、电路板设计成三块,镶嵌在仪表壳内。其中一块为电源板,一块为显示板,一块为主控板。
    3、采用DS18B20作为温度传感器,由于旧板子上没有这东西,我还得改造下。
    4、主控板采用ATMEGA64作为MCU,外扩32K RAM,这样才能玩复杂些的软件。
    5、开关输出部分就采用继电器,线性输出部分采用电压信号或电流信号输出。这个也还得改造才行。

使用特权

评论回复
19
zyok| | 2009-12-17 00:27 | 只看该作者
至少还得加个远程通信呗。。。:lol

使用特权

评论回复
20
mohanwei| | 2009-12-17 08:57 | 只看该作者
外扩32K RAM有点夸张了,除非要玩开发板一类的东西……

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:  ← 我在21QA解答技术问题,欢迎您来提问~ ♥♥(o→ܫ←o)♫  ㄟ(▔,▔)ㄏ

187

主题

8547

帖子

280

粉丝