Skip to content

randvoorhies/preflight

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 

Repository files navigation

preflight

A framework for creating automated preflight checklists for robots running ROS.

Example preflight checklist:

from preflight import *
check('Camera Publisher', lambda: getPublisher('/camera/image_raw'),       lambda x: x[0].find('myrobot') > 0)
check('Sonar Publisher',  lambda: getPublisher('/sonar_range'),            lambda x: x[0].find('myrobot') > 0)
check('IMU Publisher',    lambda: getPublisher('/imu'),                    lambda x: x[0].find('myrobot') > 0)
check('Quatrotor Status', lambda: getValue("/robotstatus/status"),         lambda x: x == '1')
check('Battery Level',    lambda: float(getValue("/robotstatus/battery")), lambda x: x > 11.0) 
check('Frame Rate Param', lambda: float(getParam('/camera/frame_rate')),   lambda x: x == frame_rate)

Example output:

Checking Camera Publisher...  OK   ([http://myrobot:59209/])
Checking Sonar Publisher...   OK   ([http://myrobot:59210/])
Checking IMU Publisher...     OK   ([http://myrobot:59211/])
Checking Robot Status...      OK   (1)
Checking Battery Level...     FAIL (10.8)
Checking Frame Rate Param...  OK   (60.0)

About

An automated preflight checklist for the Asctec Pelican running ROS

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages