一个难倒公司所有程序员的难题。

[复制链接]
6318|35
nxy825715 发表于 2007-6-19 09:51 | 显示全部楼层

个人间接:

严重同意14楼的.
高勇 发表于 2007-6-19 09:52 | 显示全部楼层

原来是整公司的程序员都被转晕了。

  
coldra 发表于 2007-6-19 09:52 | 显示全部楼层

木头让人忽悠了

  
dengm 发表于 2007-6-19 10:50 | 显示全部楼层

--

  
maychang 发表于 2007-6-19 10:52 | 显示全部楼层

判断过零方向其实很简单,只要读数速度够快

在两次读数时间间隔内风向标不可能转过大于180度角即可判断。<br />用矢量运算当然也可以,不过需要计算矢量在轴上的投影,这需要三角和反三角运算,那就麻烦了。
maychang 发表于 2007-6-19 11:05 | 显示全部楼层

柔月 也到这个版面回帖?

技术交流版人气指数大大上升。
mryyh 发表于 2007-6-19 11:22 | 显示全部楼层

再批25楼,对事不对人,呵呵

&gt&gt在两次读数时间间隔内风向标不可能转过大于180度角即可判断。<br />这个假设等于为系统留了一个隐患,系统的可靠性从理论上就有问题,不可取。<br />还要基于读数据的速度足够快,增加了对硬件的最低要求。
HUGERAT 发表于 2007-6-19 11:52 | 显示全部楼层

十五楼的方法是我们正在用的,但有问题。

此方法对于两个角度求均值没有问题计算准确。但对多个求值时,实际是两个角求均值,然后再用这均值与第三个角求均值,以此类推,此法能基本解决问题,但还不符全我们所要求的全部角加在一起再求均值的要求。不知有没有什么更好的办法。
maychang 发表于 2007-6-19 12:01 | 显示全部楼层

看不出来15楼的方法怎么不符合楼主的要求

  
 楼主| hugerat 发表于 2007-6-19 16:34 | 显示全部楼层

30楼的正解。

这个算法我们也想过,但因为太占内存(我们是在单片机上编程),没有深入去想,现在,这个算法经我们验证是正确的。太感谢30楼的兄弟了,想不到困扰我们这么久的问题就这么解决了。不过,看来还要在少占内存上多下功夫了。
chai101 发表于 2007-6-19 17:03 | 显示全部楼层

从实际出发

有必要这么处理吗?要结合实际应用的意义,做出相应的硬件处理会更好解决!!
iC921 发表于 2007-6-19 17:34 | 显示全部楼层

说是有答案了,可是还是不明白

到底用来干什么?在什么场合用的?超过180゜、360゜以后算什么?<br /><br />举例:90゜和360゜,如果直接相加后平均,225゜;如果360゜算0゜,那么平均值为45゜。这样,两个计算结果所得的方向是相反的。所以,定义上就没有讲清楚,没法得出所谓的正确答案的。<br /><br />看着题目吸引人,可是,问题也不交待清楚,不是折腾人吗?类似帖子不少,值得引以为戒。<br /><br />·&nbsp;感觉这个题目的数据就有问题,如果直接按正负角给出(生成数据时就可以做到),简单计算平均值就可以了(角度范围限在360゜或±180゜以内)゜゜゜゜゜゜゜゜
tjsheep 发表于 2007-6-19 18:24 | 显示全部楼层

那搂主要求的

如果是0度,0度,90度的三个风向,平均是得30度这样的么?
xplore 发表于 2007-6-19 20:43 | 显示全部楼层

楼主公司作风力发电机控制?

好象这个根本不是问题吧?<br /><br />估计公司里程序员全是一些小学毕业的, 但学了C语言
mohanwei 发表于 2007-6-19 21:36 | 显示全部楼层

这年头,都喜欢给帖子加一个唬人的标题……

  
conwh 发表于 2007-6-19 22:20 | 显示全部楼层

用格雷码盘很容易实现过零点的检测。

  
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部