math - 需要数学辅助:将 Arduino 模拟输入缩放为 -1 到 1
问题描述
Arduino map() 函数不适用于此问题,并且已经搜索了“网络示例”,但仍然不知所措。我的“数学大脑”坏掉了!!:-(
我有一个进入 Arduino 模拟输入的电位器产生 170 到 1000 的范围。我想将其缩放到 -1 到 1 的范围,以模拟正在更换的商业操纵杆。
有一个 Arduino Micro 读取罐子并通过串行将数据发送到处理。这一切都有效 - 只是无法发送 -1 到 1 的范围。
这样做的公式将是一个巨大的帮助!
=艾伦·R。
解决方案
您可以使用线性插值来发挥作用。如果 x 是输入并且 y 是您想要的输出,则将得出以下关系:
(y-1)/(x-1000) = (1-(-1))/(1000-170) = 1/415
所以基本上,y = 1 + (x-1000)/415
推荐阅读
- python - 如何在python中使用2captcha绕过hCaptcha?
- c# - LINQ 实体框架查询在 EF Core 中不起作用,引发异常
- python - 自定义损失函数返回 - InvalidArgumentError:第二个输入必须是标量,但它具有形状 [64]
- css - 为什么文本阴影不支持备用半径?
- javascript - 如何在纯 JavaScript 中获取键盘输入。没有 html 和那些东西
- intellij-idea - 用于建议/显示代码策略的 IntelliJ Idea 插件
- javascript - 是否有可能在 Promise.race() 和 Promise.all() 中获得以后的评估胜利,即使它们消耗相同的时间?
- laravel - 将 Laravel 连接到 MongoDB 数据库
- flutter - 将 JSON 存储到地图
- javascript - React:解析和转换别名文件