mirror of
https://github.com/dragonpilot/dragonpilot.git
synced 2026-07-22 21:32:13 +08:00
a5cee30aa6
date: 2024-06-25T13:13:17
commit: 69a099242f
44 lines
1.2 KiB
Python
Executable File
44 lines
1.2 KiB
Python
Executable File
#!/usr/bin/env python3
|
|
import gc
|
|
import time
|
|
|
|
import cereal.messaging as messaging
|
|
from openpilot.common.realtime import set_realtime_priority, DT_DMON
|
|
from openpilot.common.params import Params
|
|
from openpilot.selfdrive.controls.lib.events import Events
|
|
|
|
|
|
def dmonitoringd_thread(sm=None, pm=None):
|
|
Params().put_bool("DmModelInitialized", True)
|
|
gc.disable()
|
|
set_realtime_priority(2)
|
|
|
|
if pm is None:
|
|
pm = messaging.PubMaster(['driverStateV2', 'driverMonitoringState'])
|
|
|
|
# 10Hz <- dmonitoringmodeld
|
|
while True:
|
|
dat = messaging.new_message('driverStateV2', valid=True)
|
|
dat.driverStateV2.leftDriverData.faceOrientation = [0., 0., 0.]
|
|
dat.driverStateV2.leftDriverData.faceProb = 1.0
|
|
dat.driverStateV2.rightDriverData.faceOrientation = [0., 0., 0.]
|
|
dat.driverStateV2.rightDriverData.faceProb = 1.0
|
|
pm.send('driverStateV2', dat)
|
|
|
|
dat = messaging.new_message('driverMonitoringState', valid=True)
|
|
dat.driverMonitoringState = {
|
|
"events": Events().to_msg(),
|
|
"faceDetected": True,
|
|
"isDistracted": False,
|
|
"awarenessStatus": 1.,
|
|
}
|
|
pm.send('driverMonitoringState', dat)
|
|
time.sleep(DT_DMON)
|
|
|
|
def main(sm=None, pm=None):
|
|
dmonitoringd_thread(sm, pm)
|
|
|
|
|
|
if __name__ == '__main__':
|
|
main()
|