Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
sensors/sensors.cpp
- Committer:
- shimizuta
- Date:
- 2019-05-03
- Revision:
- 21:14133581387b
- Child:
- 22:0ed9de464f40
File content as of revision 21:14133581387b:
#include "sensors.h" //filter [0]:forward, [1]: back const float kOldWeight = 0.5; const float kOutVal = 500; //<0.1が返ってきたときに返す値 LowPassFilter lowpassfilter[2] = {LowPassFilter(kOldWeight),LowPassFilter(kOldWeight),}; HCSR04 sensor_forward(p11,p12); HCSR04 sensor_back(p17, p18); float GetFilteredDist_cm(HCSR04 & sensor, LowPassFilter & filter) { sensor.start(); float raw_data = sensor.get_dist_cm(); if(raw_data < 0.1)//0.1以下なら前回の値を返す return kOutVal; filter.SetData(raw_data); float dist = filter.GetData(); // DEBUG("raw %.3f, filter %.3f\r\n", raw_data,dist); return dist; } double get_dist_forward() { return GetFilteredDist_cm(sensor_forward,lowpassfilter[0]); } double get_dist_back() { return GetFilteredDist_cm(sensor_back,lowpassfilter[1]); }