Software Development

Human Factors Safety Laboratory engineers and software developers are experienced in creating high-quality software ranging from small proof of concept apps to fully featured and highly complex software systems.

Smartphone and Web Development

Smartphones are a convenient platform for collecting data from users when they are in the field. It allows for on-site, near real-time collection of information such as the details of a safety critical incident. Additionally, on-device sensors allow for the inclusion of rich data such as location, photos, or video. Smartphones are also powerful sensor platforms that commonly include GPS, accelerometers, gyroscopes, cellular radios, NFC, Bluetooth, among others. This allows for apps that can collect a great deal of experimental data and provide real-time feedback to users.

On-vehicle Software Systems

Sophisticated, on-vehicle software systems are required to enable applications such as automation, driver support, driving behavior monitoring, among others. In these types of systems, software may be developed to interface with sensors, fuse data from multiple sources, determine navigation goals and wayfinding strategies, detect navigation hazards, and send input commands to the vehicle. HFSL engineers have developed a number of these systems over the years on vehicles such as snowplows, buses, and passenger vehicles. Software development ranges from the high-level system architecture design to the low-level stream parsing to read sensor data.

Vehicle Communication

Rarely do complex vehicle systems operate totally isolated from the outside world. Vehicles communicate with entities including other vehicles (V2V), infrastructure (V2I), and other systems (V2X). These communication channels, whether over DSRC or cellular networks, enable cooperative applications to increase transportation safety and productivity. Deployments in the field often represent a black box without telemetry that allows these systems to provide information about their status. In an experimental setting, this enables data collection in near real-time allowing for continuous validation.