kopia lustrzana https://github.com/cyoung/stratux
Add UI switch to record AHRS logs.
rodzic
1344515c93
commit
f1ff15031f
|
@ -1040,6 +1040,7 @@ type settings struct {
|
|||
DisplayTrafficSource bool
|
||||
DEBUG bool
|
||||
ReplayLog bool
|
||||
AHRSLog bool
|
||||
IMUMapping [2]int // Map from aircraft axis to sensor axis: accelerometer
|
||||
PPM int
|
||||
OwnshipModeS string
|
||||
|
@ -1110,6 +1111,7 @@ func defaultSettings() {
|
|||
globalSettings.DEBUG = false
|
||||
globalSettings.DisplayTrafficSource = false
|
||||
globalSettings.ReplayLog = false //TODO: 'true' for debug builds.
|
||||
globalSettings.AHRSLog = false
|
||||
globalSettings.IMUMapping = [2]int{-1, -3} // OpenFlightBox AHRS normal mapping
|
||||
globalSettings.OwnshipModeS = "F00000"
|
||||
globalSettings.DeveloperMode = false
|
||||
|
|
|
@ -293,6 +293,8 @@ func handleSettingsSetRequest(w http.ResponseWriter, r *http.Request) {
|
|||
if v != globalSettings.ReplayLog { // Don't mark the files unless there is a change.
|
||||
globalSettings.ReplayLog = v
|
||||
}
|
||||
case "AHRSLog":
|
||||
globalSettings.AHRSLog = val.(bool)
|
||||
case "IMUMapping":
|
||||
if globalSettings.IMUMapping != val.([2]int) {
|
||||
globalSettings.IMUMapping = val.([2]int)
|
||||
|
|
|
@ -161,6 +161,7 @@ func sensorAttitudeSender() {
|
|||
headingMag, slipSkid, turnRate, gLoad float64
|
||||
errHeadingMag, errSlipSkid, errTurnRate, errGLoad error
|
||||
failnum uint8
|
||||
analysisLogger *ahrs.AHRSLogger
|
||||
)
|
||||
log.Println("AHRS Info: initializing new simple AHRS")
|
||||
s = ahrs.InitializeSimple()
|
||||
|
@ -168,9 +169,6 @@ func sensorAttitudeSender() {
|
|||
cage = make(chan(bool))
|
||||
|
||||
// Set up loggers for analysis
|
||||
analysisFilename := fmt.Sprintf("/var/log/sensors_%s.csv", time.Now().Format("20060102_150405"))
|
||||
analysisLogger := ahrs.NewAHRSLogger(analysisFilename, s.GetLogMap())
|
||||
|
||||
ahrswebListener, err := ahrsweb.NewKalmanListener()
|
||||
if err != nil {
|
||||
log.Printf("AHRS Error: couldn't start ahrswebListener: %s\n", err.Error())
|
||||
|
@ -274,8 +272,17 @@ func sensorAttitudeSender() {
|
|||
s.Compute(m)
|
||||
|
||||
// Log it to csv for analysis
|
||||
if analysisFilename != "" {
|
||||
analysisLogger.Log()
|
||||
if globalSettings.AHRSLog {
|
||||
if analysisLogger == nil {
|
||||
analysisFilename := fmt.Sprintf("/var/log/sensors_%s.csv", time.Now().Format("20060102_150405"))
|
||||
analysisLogger = ahrs.NewAHRSLogger(analysisFilename, s.GetLogMap())
|
||||
}
|
||||
|
||||
if analysisLogger != nil {
|
||||
analysisLogger.Log()
|
||||
}
|
||||
} else {
|
||||
analysisLogger = nil
|
||||
}
|
||||
|
||||
// Debugging server:
|
||||
|
|
|
@ -7,7 +7,7 @@ function SettingsCtrl($rootScope, $scope, $state, $location, $window, $http) {
|
|||
$scope.$parent.helppage = 'plates/settings-help.html';
|
||||
|
||||
var toggles = ['UAT_Enabled', 'ES_Enabled', 'Ping_Enabled', 'GPS_Enabled', 'IMU_Sensor_Enabled',
|
||||
'BMP_Sensor_Enabled', 'DisplayTrafficSource', 'DEBUG', 'ReplayLog'];
|
||||
'BMP_Sensor_Enabled', 'DisplayTrafficSource', 'DEBUG', 'ReplayLog', 'AHRSLog'];
|
||||
var settings = {};
|
||||
for (i = 0; i < toggles.length; i++) {
|
||||
settings[toggles[i]] = undefined;
|
||||
|
@ -32,6 +32,7 @@ function SettingsCtrl($rootScope, $scope, $state, $location, $window, $http) {
|
|||
$scope.DisplayTrafficSource = settings.DisplayTrafficSource;
|
||||
$scope.DEBUG = settings.DEBUG;
|
||||
$scope.ReplayLog = settings.ReplayLog;
|
||||
$scope.AHRSLog = settings.AHRSLog;
|
||||
$scope.PPM = settings.PPM;
|
||||
$scope.WatchList = settings.WatchList;
|
||||
$scope.OwnshipModeS = settings.OwnshipModeS;
|
||||
|
|
|
@ -66,6 +66,12 @@
|
|||
<ui-switch ng-model='ReplayLog' settings-change></ui-switch>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="control-label col-xs-7">Record AHRS Logs</label>
|
||||
<div class="col-xs-5">
|
||||
<ui-switch ng-model='AHRSLog' settings-change></ui-switch>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
Ładowanie…
Reference in New Issue