ご無沙汰しております。
明日は出社予定ですが、お天気は雨ですね。。。
さて今日のお題は、"丸め誤差"です。
丸め誤差とは、数値の計算処理の都合上、ある程度で値を省略することにより、計算結果に現れてくる誤差のことである。 丸め誤差の「丸め」とは、任意の桁数以上の精度の数値を端数として処理してしまうことであり、四捨五入や切り上げ、切り捨てなどを含んでいる。
誤差というとネガティブなイメージを伴います。なぜならば、きちんとした数値の精度が出ていないからです。
でも考え方に依っては、その誤差がマージンとなって実用上プラスに働き、結果的にfail safeになる場合もあるかと。逆もありますね。結局、運任せか
いえ違います!
誤差は発生する、どのくらいの誤差が発生するかを理解しておくことが肝要ってことで。
夏休みの自由研究ネタとして、Weather Stationを松竹梅の各バージョンで準備しました。今回は、MicroPythonを使った番外編になります。
Weather Station(デジタル百葉箱)をMicroPythonで作った場合(IDEは、Thonnyです。)
Weather StationをC++で作った場合
以上を比較すると、MicroPython版のWeather Stationの数値の方が小さめになります。
MicroPythonインタプリタ上の演算の丸めを伴う計算結果なので、小さめの数値になっていると思われます。
もちろん同一のH/Wを使っております。ESPDuino-32+BME280(温度、気圧、湿度 センサー)の構成になります。
Weather Stationの揃い踏み
左端は、拡張(OLEDとSD Card)した竹バージョン、真ん中が以下の回路構成の今回のWeather Station、右上は梅バージョンで、右端にちらっと見えるのが松バージョンです。
【参照記事】
【参考記事】