消息属性范围映射
将数字从一个数值范围映射到另一个数值范围
问题背景
将数字从一个数值范围映射到另一个数值范围,例如,传感器读数从 0-1023 映射到电压的 0-5
解决方案
使用 范围映射 节点映射消息属性值
示例

示例JSON
[{"id":"80dae67d.b4d8f8","type":"inject","z":"714695530b415411","name":"","repeat":"","crontab":"","once":false,"topic":"","payload":"0","payloadType":"num","x":270,"y":460,"wires":[["81f13534.456348"]]},{"id":"81f13534.456348","type":"range","z":"714695530b415411","minin":"0","maxin":"1023","minout":"0","maxout":"5","action":"clamp","round":false,"property":"payload","name":"","x":490,"y":500,"wires":[["e80b61d7.4b399"]]},{"id":"cb21de23.75a2f","type":"inject","z":"714695530b415411","name":"","repeat":"","crontab":"","once":false,"topic":"","payload":"512","payloadType":"num","x":270,"y":500,"wires":[["81f13534.456348"]]},{"id":"342552de.255a1e","type":"inject","z":"714695530b415411","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":"","topic":"","payload":"1023","payloadType":"num","x":270,"y":540,"wires":[["81f13534.456348"]]},{"id":"e80b61d7.4b399","type":"debug","z":"714695530b415411","logName":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","logLevel":"info","dataType":"field","syntax":"mustache","template":"","x":690,"y":500,"wires":[]},{"id":"445f9693641f89ed","type":"comment","z":"714695530b415411","name":"将0-1023的数值按比例映射到0-5","info":"","x":330,"y":400,"wires":[]}]
运行结果
点击对应的注入按钮,将会看到0-1023的数值按照比例映射到 0-5之间的数值,原始的 0 映射后对应的是 0, 512 经过映射后 是 2.5024437927663734, 1023 经过映射后是 5
