打印
[匠人手记]

都过了好久才看到,好**啊

[复制链接]
楼主: 程序匠人
手机看帖
扫描二维码
随时随地手机跟帖
181
程序匠人|  楼主 | 2008-10-14 21:06 | 只看该作者 回帖奖励 |倒序浏览

楼上正解

使用特权

评论回复
182
高建明| | 2008-10-15 13:14 | 只看该作者

ddd

不错,我早就这么干了

使用特权

评论回复
183
wuji2005| | 2008-10-16 18:41 | 只看该作者

支持中。。。期待中

使用特权

评论回复
184
li727bo| | 2008-10-16 21:56 | 只看该作者

呵呵,又学了点东西

呵呵,又学了点东西

使用特权

评论回复
185
程序匠人|  楼主 | 2008-10-16 23:43 | 只看该作者

七、真值表、数轴和坐标系

七、真值表、数轴和坐标系

1、简述

前面介绍过的流程图、N-S图、PAD图,是用于描述程序的控制流程;数据流图是描述数据流向;状态迁移图(表)是描述状态及状态的迁移。虽然方法和角度不同,但被描述的对象都是动态的。

除了这些动态的对象,软件算法中还有一些静态的逻辑关系,比如多重嵌套的条件选择,用上述图表不易清楚地描述。这时,我们可以用真值表或者数轴和坐标系来表示它们内在逻辑关系。

使用特权

评论回复
186
程序匠人|  楼主 | 2008-10-16 23:45 | 只看该作者

2、真值表

2、真值表

把变量的各种可能取值与相对应的函数值,用表格的形式一一列举出来,这种表格就叫做真值表。真值表有时又被称为判定表。

下面举一个真值表应用例子(参见表 1.2:真值表实例)。这是一个用可控硅来控制加热的系统。通过控制可控硅的导通角(PWM方式)来调节温度。在这个系统中,我们定时(假设是500毫秒)采样系统的实际温度,并把本次温度和上次温度以及设定温度作比较,通过计算或查表,求出PWM占空调节量。

我们知道,在温度反馈控制中,快速和稳定是一对矛盾。片面要求快速,可能会导致过冲,甚至形成反复振荡。而如果力求稳定,则有可能降低调节速度。为了兼顾快速和稳定的两方面要求,我们采用了模糊控制。其中包含了以下两条规则:

规则一:根据设定温度与本次实际温度的差值决定PWM占空比的调节量。如果本次温度低于设定温度,代表需要增加加热功率(升温),此时应该增加占空;如果本次温度高于设定温度,代表需要降低加热功率(降温),此时应该增加占空。当温差较小时,占空的调节量也要小,以达到稳定输出的目的;当温差较大时,占空的调节量也要增大,以达到快速调节的目的。

规则二:根据实际温度的变化趋势(即本次温度与上次温度之差)来修正占空比调节量。如果本次温度低于上次温度,代表温度正在下降;反之,代表温度正在上升。这种趋势可以让我们预见未来的温度变化,因此可以把它作为一个考量因素,并折算成对占空调节量的修正量。

当实际温度的变化趋势(正在升温、正在降温)与温度调节方向(需要升温、需要降温)一致时,PWM占空比的调节量和修正量将相互抵消;反之则相互叠加。最终我们会得到一个修正后的调节量。

如何确定调节量呢?这需要一定的经验推导和试验验证。

模糊控制在温控系统中的应用原理,不是本手记的范畴。匠人之所以要废这些口舌,只是为了帮助读者看懂这张真值表。

真值表表的优点是能够简洁,无二义性地描述所有的处理规则。因此这也是我们软件规划时的一件利器。

当然,真值表表示的是静态逻辑,是在某种条件取值组合情况下可能的结果,它不能表达控制的流程,也不能表达循环结构,因此真值表只能作为一种设计规划时的辅助方法。

使用特权

评论回复
187
程序匠人|  楼主 | 2008-10-16 23:49 | 只看该作者

向着200楼和10000点击进军!

本贴最新战况:

回复:180
点击: 9305


看贴的回个帖,潜水的冒个泡!这是鼓励作者写下去的最好方式。切记!

(未完、待续……)

使用特权

评论回复
188
cam11392| | 2008-10-17 00:00 | 只看该作者

.......

看就看了,也受益了,没啥回报的,既然匠人喜欢那个回贴数字,那就满足一下你吧

使用特权

评论回复
189
程序匠人|  楼主 | 2008-10-17 00:03 | 只看该作者

哈哈,谢谢楼上支持阿

使用特权

评论回复
190
hq_y| | 2008-10-17 00:08 | 只看该作者

呵呵,匠人的图画的很好看

使用特权

评论回复
191
zyok| | 2008-10-17 02:37 | 只看该作者

又来盖一楼...

改天21ic准高楼也有我的功劳。。。呵呵

使用特权

评论回复
192
cauhorse| | 2008-10-17 14:04 | 只看该作者

匠人的表做得真有艺术。。

顶一个,还带色调的。。。
前两天我也正好做了温控,不过那个表,好像是把温度偏差和偏差变化率作为
模糊控制的输入的(可能我书呆子了,呵呵)
当然最后只用了半张表,因为没有冷却功能。。。

使用特权

评论回复
193
sampson21| | 2008-10-21 10:26 | 只看该作者

支持

使用特权

评论回复
194
king6301| | 2008-10-21 15:39 | 只看该作者

顶贴

美!
真美!!
太美了!!!
匠人真美:D
匠人的图美~
简直美不胜收!
美的掉渣渣^^
不会更美*
美死了&
臭美$
美…

哈哈哈……

使用特权

评论回复
195
程序匠人|  楼主 | 2008-10-21 15:50 | 只看该作者

臭美$?

#¥%·…………¥%%##

使用特权

评论回复
196
maxking| | 2008-10-21 22:59 | 只看该作者

搬板凳听课!!

不过以前听前辈说过,要写好的程序,首先要把数据结构和算法弄懂。

使用特权

评论回复
197
king6301| | 2008-10-22 12:34 | 只看该作者

再来顶贴

本来有个困扰已久的问题想请教匠人来着
不过最近**一现解决了
下次再遇难题,再当请教~

使用特权

评论回复
198
腾腾| | 2008-10-22 17:02 | 只看该作者

RE 实时更新了。谢谢匠人

使用特权

评论回复
199
腾腾| | 2008-10-22 17:03 | 只看该作者

弱弱的问:

匠人姐姐的图是用什么软件画的啊?
viso吗?

使用特权

评论回复
200
程序匠人|  楼主 | 2008-10-22 17:15 | 只看该作者

回腾腾

基本都是用viso画的,(表格类不是)

使用特权

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

本版积分规则