At 7am, my personal robot (I call him ‘Jake’) turns on the bedroom lights to 50% brightness and waits for my body to recognize the onset of morning. If I take longer than 5 minutes, Jake will begin to play some soft music. This is usually enough to get me going. After another 5 minutes, Jake would start vibrating the mattress and tell me to get out of bed in a calm but slightly annoying way… that’s as much of a snooze alarm as he allows.
I get in the shower for a few minutes, and Jake hands me a towel as I step out. After drying off, I sit in my valet chair and do some relaxation exercises while Jake shaves my face. When finished, I put on the clothes that Jake has laid out for me. Jake has already started making my breakfast, and I can smell the bacon now. After dressing, I go to the kitchen where my eggs, toast, bacon and coffee are waiting for me, and my vitamins have been blended into a small fruit smoothie. Jake tells me the sky is cloudy and there is a 78.3% chance of rain today, so I grab my umbrella.
As I leave the house, Jake engages the perimeter security system. Approaching my new car (which has yet to be named), it recognizes me, automatically starts the engine, and unlocks itself so I can get in. I instruct the navigation system to take me to work. While it checks the traffic patterns, I begin to review some notes for my meeting. I still sit in the front seat so I can avoid motion sickness, but otherwise the car is in control. The car begins to back out of the driveway but then stops abruptly. As I look around to see if there is a problem, I notice my neighbor’s robot is walking their dog. We (my car and I) patiently wait for them to pass. Due to the interruption in my thoughts, the car takes the opportunity to suggest several names for itself that I should consider; it’s especially fond of ‘Carson’, but I’m leaning more toward ‘James’.
When I arrive at work, I get out of the car and it drives off to find a parking spot with a charging station. At the front door, I need to pause while the building sensors check my credentials… why is this taking so long? It’s the most annoying 5 seconds of my day.
Not a bad morning, huh?
That probably took a few billion lines of software, tens of thousands of man-hours in design and testing, and a fair amount of adjustment for a human who is accustomed to doing things himself.
Only a safety-centric development process could make any of this possible.
These systems involve a myriad of sensors, controllers and motors that must be coordinated. There are numerous interfaces between subsystems. There are real hazards to consider at every turn. There are so many ‘what-ifs’ as part of these scenarios that designers need to constantly ask what could go wrong and how it can be mitigated. Several levels of Failure Modes and Effects Analysis (FMEA) and meaningful design reviews would need to take place to deliver this kind of performance. This is perhaps the most valuable tool for honing sophisticated designs like these. It also allows the designers to assign effective diagnostics to control malfunctions. These are not the kind of projects where “close enough” has a chance of working; failure is not an option.
As we move further into the 21st century, technology is embedding itself deeper into our lives. Some of these systems are already on the factory floor, and there are many applications that will find their way into our homes.
Here’s what it might look like had the developers not done such a good job.
At 7am, my personal robot (I call him ‘Jake’) emits a blaring fog horn noise so loud that it moves the pictures on the wall. I jump out of bed and yell “Jake, Alarm off!”, but he ignores it. A second command silences the alarm. I stumble in the dark to turn on the light, hitting my toe on the bedpost… OUCH! Why did I set the alarm for 7am? I simply forgot the service note about alarm malfunctions when set exactly for 7:00am or 7:00pm. I should have set it for 6:59am for a more comfortable awakening.
I get in the shower for a few minutes. As I step out, I call to Jake for a towel, but he has mistakenly grabbed a bar of soap. I take the soap, put it away, and get my own towel. After drying off, I sit in my valet chair and do some relaxation exercises, but I think I’ll shave myself this morning.
I look at the clothes that Jake has laid out for me. He’s made some good choices this morning… until I realize there is a large rip in the shirt … Jake has tried to remove the hanger through the sleeve… again. I get another shirt and finish getting dressed. I can already smell the bacon, so I know breakfast is almost ready. As I enter the kitchen, Jake has placed my eggs, toast, bacon and coffee on the table… literally on the table… no dish, no cup. I sidestep the coffee puddle on the floor, get a dish for my food, and begin to eat. When I’m done, I say “Jake, wash kitchen floor”. Jake repeats “Watch channel four? Station not available.” I throw my towel on the floor to mop up the coffee. Why does it look like Jake is smiling at me? I get my jacket and Jake locks the doors and engages the security system but I wish he would wait until I actually leave the house.
Approaching my new car (which has yet to be named), it automatically starts the engine. When I try to open the car door, the engine stops and I hear the familiar “INTRUDER ALERT! STAND BACK!” OK, the owner recognition feature is having a problem again. I use my fob to disable the alarm and get in the car. I instruct the navigation system to “go to work”. While it checks the traffic patterns, I begin to review some notes for my meeting. Then my car tells me “Travel time to New York will be 4.5 hours due to traffic delays; I suggest you take the train today.” It seems the voice recognition is having problems too; I said ‘to work’, not ‘New York!’ So I try “Navigation reset; go to work.” The car replies “I’m sorry Dave; I’m afraid I can’t do that.” I disable the navigation system and manually drive to work… at least the car is still drivable. As I get out of the car at the office, it takes the opportunity to suggest several names for itself that I should consider; it’s especially fond of ‘Carson’, but I’m thinking it should be ‘HAL’.