需要数学辅助:将Arduino模拟输入缩放为-1到1

问题描述 投票:0回答:1

Arduino map()函数不适用于这个问题,并且已经搜索了'网络的例子,但我仍然不知所措。我的'数学大脑'是ded !! :-(

我有一个进入Arduino模拟输入的底池产生170到1000的范围。我想将其缩放到-1到1的范围,以模拟正在被替换的商业操纵杆。

有一个Arduino Micro读取数据库并通过串行发送数据到Processing。这一切都有效 - 只是不能得到-1到1范围发送。

这样做的公式将是一个巨大的帮助! = Alan R.

math arduino scaling
1个回答
1
投票

您可以使用线性插值来完成魔术。如果x是输入,y是您想要的输出,则以下关系将成立:

(y-1)/(x-1000)=(1 - ( - 1))/(1000-170)= 1/415

所以基本上,y = 1 +(x-1000)/ 415

© www.soinside.com 2019 - 2024. All rights reserved.