CarTel Mark Mucha University of Central Florida EEL 6788 Professor: Dr. Lotzi Bölöni S What is CarTel? S A distributed sensor computing system S Important and emerging category of sensor networks S S S Driven by a “technology push” S S Mobile Involves heterogeneous sensor data Flood of underlying hardware components Also driven by “application pull” S Demand for similar applications S Reusable data management system for querying and collecting data from intermittently connected devices. S Distributed, mobile sensor network, and telematics system. CarTel Goals S Provide a simple programming interface S Easy for application developers, easy to write as web applications S Handle large amounts of heterogeneous sensor data S Types of sensors isn’t constrained S Easy to integrate new sensors S Provide local buffering and processing on mobile nodes S Handle intermittent connectivity S Primary mode of network access for mobile CarTel nodes is opportunistic wireless [Bluetooth, Wi-Fi, etc.] What does CarTel do? S Allows applications to S Collect Data S Process Data S Analyze Data S Visualize Data S CarTel uses sensors on automobiles and Smartphones S Uses wireless networks opportunistically S Wi-Fi, Bluetooth, cellular Technology Push S Ubiquitous cheap, embedded, sensor-equipped computers and mobile phones S Phones S iPhone S Droid S Other hardware S Routers (modifiable, running Linux) S Netbooks Why not? S Over 600 million automobiles worldwide S A lot of potential for sensor data S Current generation of cars have 100+ sensors S Resource-rich S Can support relatively robust computation and communication systems S Cars would be natural collectors of the following info S Traffic Monitoring and route planning S Preventative maintenance and diagnostics of cars S Civil Infrastructure monitoring S Monitoring of driver preferences (radio stations, shopping, etc.) Mobile Sensors on Vehicles Examples S Environmental Monitoring S Civil Infrastructure Monitoring S Automotive Diagnostics S Geo-Imaging S Data muling S My Ideas S S Rank a Driver Law enforcement applications How is CarTel used? S Commute and Traffic Portal S See the data @ icartel.net S Traffic mitigation S Using predictive delay models and traffic-aware route planning algos S iPhone Application S Pothole Patrol (P2) How is CarTel used? S Fleet testbed S CarTel deployed on 27 car fleet of Boston area limo company. S Link S Wi-Fi Monitoring S Link S Monitor urban Wi-Fi connectivity S 290 driving hours found over 13,000 access points in a year’s time How is CarTel used? S On-board automotive diagnostics & notification S Uses ODB-II interface (standard, made mandatory for all cars sold in the US in 1996 [source] ) S Monitor and report S Emissions S Gas mileage S RPM S Long term view of car performance S Comparison against other cars How is CarTel used? S Cars as Mules S CafNet (“carry and forward network”) S Data delivery between nodes that aren’t typically connected S Deliver data to internet servers from mobile sensors with short- range radio connectivity on the CarTel node Reinventing the wheel? S Static sensors S Can provide the same data the designers of CarTel have expressed interest in S Great for a high traffic area, not so for back roads and most residential areas S Hard to get coverage over a large area S Some sensors are very expensive S Static might not be an optimal use of the asset Environmental Monitoring S Mobile chemical and pollution sensors S Cover a larger geographical area with fewer sensors compared to static sensors S Chemical and pollution sensors are costly, so covering a larger area with fewer sensors would be preferred Civil Infrastructure Monitoring S Monitor state of roads & bridges S Detect vibration, potholes, and black ice Automotive Diagnostics S Obtain information from vehicles onboard sensors S Aid in making preventative maintenance preventative S Compare diagnostics Geo-Imaging S Cameras attached to cars S Mobile phone cameras (location tagged video/images) Data Muling S Cars (and people) = the mules or “delivery networks” for remote sensornets S Data sent to Internet servers Networking S CafNet (main component, more later) S Cabernet S Fast end-to-end connectivity across set of changing Wi-Fi access points S Usable network even with short connection times (a few seconds) S dpipe S Delay-tolerant pipe S Allows producer and consumer to transport data across intermittent connection CarTel: 3 main software components S AutoPortal S CafNet S ICEDB S 2 common abstractions S Pipes S Databases Block Diagram source CarTel Architecture ICEDB Server Portal Clients S Open Wireless Access Point Internet Ad-hoc network User’s Wireless Access Point ICEDB Remote CarTel: AutoPortal S AutoPortal S Server software S Provides Data management S Visualization S Web-based querying S S Requests data from remote nodes S Aggregates reports from nodes to get high level view of conditions, providing visualization of collected data CarTel: AutoPortal CarTel: CafNet S A networking infrastructure for carry-and-forward networks S Leverages variable and intermittent network connectivity S Extends reach of traditional networks by the routing of data S S S S over a wide array of high latency and unreliable links Mobility of network medium is a strength, not a weakness Delay-tolerant stack Mobile data muling Data transfer across an intermittent network connection CarTel: CafNet App 1 … App N Transport Layer •Registers data to be transmitted •Delivers incoming data •Request data from the application •Notifies application of successful delivery Network Layer •Notifies transport layer of free buffers •Schedules data for transmission •Selects routes •Buffers data for transmission Device Driver Mule Adaptation Layer •Provides uniform neighbor discovery Device Driver CarTel: ICEDB S Device-level data management infrastructure S Collects, pre-processes, and prioritizes information on remote nodes running CarTel software. S Schema auto-adjusted based on available sensors in the car. S Stream-processing engine responsible for data aggregation and processing queries. S Query selects sensor and rate of data acquisition CarTel: ICEDB S Query results are streamed across intermittent connection S Local prioritization (FIFO, random, threshold, bisect prioritization schemes) S Summarization queries (global prioritization) S Built on Postgresql S Adds continuous queries S S S Rate n Every n More Info CarTel: ICEDB S Example: Continuous query S SELECT carid, traceid, time, location FROM gps WHERE gps.time BETWEEN now()-1 mins and now() RATE 5 mins CarTel: ICEDB S Example: Local Prioritization S With limited connection times, data must be prioritized locally S Two added statements: PRIORITY and DELIVERY ORDER S SELECT carid, traceid, time, location FROM gps WHERE gps.time BETWEEN now()-1 mins and now() PRIORITY 2 CarTel: ICEDB S Example: Global Prioritization S With limited connection times, data must also be prioritized globally S Added statement: SUMMARIZE AS S SELECT … EVERY … BUFFER in bufname SUMMARIZE AS SELECT f1,f2,…,fn FROM bufname WHERE pred GROUP BY f1,f2,…,fn CarTel: Pothole Patrol S P2 (Pothole Patrol) S S S CarTel + Machine Learning to auto classify road surface conditions CarTel node with 3-axis acceleration and GPS sensors Gathers location tagged vibration data @ 400 Hz S Deployed on 10 taxis in the Boston area S Analysis algorithms calibrated with human perception of road surface quality S Able to predict 75% of bad surface conditions as reported by drivers S One week of driving S 4,800 bad surface locations CatTel: Pothole Patrol Road surface issues detected by Pothole Patrol CarTel :Pothole Patrol CarTel: Pothole Patrol Avoid this bridge Bad surfaces mapped out iCarTel (iPhone Application) S “iCartel is a free 3G or 3GS application that will help you reduce the time you spend stuck in traffic. iCartel, based on the MIT CarTel ("Car Telecommunications") research project, builds on a community approach to delivering reliable traffic information and helping users plan around it.” iCarTel iCarTel iCarTel Questions? Resources S CarTel website S CarTel: A Distributed Mobile Sensor Computing System S Bret Hull, Vladimir Bychkovsky, Yang Zhang, Kevin Chen, Michel Goraczko, S Allen Miu, Eugene Shih, Hari Balakrishnan and Samuel Madden S MIT Computer Science and Artificial Intelligence Laboratory