Upload
oscar-andrews
View
212
Download
0
Embed Size (px)
Citation preview
Power BotGroup 2
Luke CremeriusJerald Slatko
Marcel Michael Tarik Ait El Fkih
Sponsored By:
Aeronix Inc.
Project Description
• Autonomous Robot with onboard auxiliary battery
• Used to provide supplemental power to mobile devices (laptops, mobile phones…etc)
• Uses onboard navigation algorithms to navigate to users location
• Has iOS application to provide robot statistics and is used to control PowerBot’s movements.
Project Motivation
• Battery life longevity in mobile devices is a constant issue.
• Wanted to create a charging solution that could charge the device without inconveniencing the user.
• The device would be simple to use, allowing for easy adoption into a users everyday routine.
Objectives
• PowerBot will be able to navigate autonomously to a users location.
• PowerBot can be remotely controlled by user input, through the use of an onboard camera and the provided iOS application.
• PowerBot will contain a battery used to charge external devices through the use of USB, DC, and inductive charging.
Specs
• Will be at most 36” long• Max speed of 5 mph• Battery life of minimum 24 hours• Able to charge mobile phone from 0% - 100%
without needing to recharge internal batteries• Will re-charge internal batteries through in-home
AC and/or via onboard solar panel.• Will navigate to the user autonomously• Can be operated via manual control
Software Overview
• Embedded software for navigation and power control
• iOS application for controlling PowerBot • Wi-Fi module embedded software for
communication with iOS app
iOS Application
Embedded NavigationAlgorithm
Motor Control Power Management
SoftwareLayout
MCU Embedded Software
Sonar Sensors Servo Motors Solar PanelCharging Ports
iOS App• Written in Objective-C using
Xcode 4.4• Offers multiple options for
PowerBot:– Settings– Navigation– Manual– Statistics
iOS Views
• Each view contains a separate viewController, allowing each tab to contain a unique layout of buttons and fields to be presented to the user.
iOS Networking Methods
• Void socketConnect()– Creates input and output streams via theNSStream subclasses:
NSInputStream and NSOutputStream
• int sendMessage(NSOutputStream *out , char *buffer)– Sends data stored within the output buffer out via the output
socket
• int receiveMessage(NSInputStream *in, char*bufferIn)– Receives data via the input socket and stores it in the input buffer
• int parseData(char *bufferIn, int length)– Parses the input buffer and passes data to the appropriate method
Wi-Fi Communication• Used as the primary mode of communication between PowerBot and the iOS
Application.
• 802.11 used as physical layer communication, with sockets used for higher level communication
• RN-131 TCP/IP stack facilitates simpler TCP and UDP data transfer between PowerBot and its iOS App.
Application Layer
MCU - Serial
802.11 - Socket
iOS - Serial
802.11 Socket
Application Layer
Embedded Software iOS Software
Wi-Fi Module - RN-131 • The Microchip RN-131 provides a complete Wi-Fi solution for onboard
communication with PowerBot
• The integrated TCP/IP stack within the RN-131 allows for easier implementation of sockets and passing data via TCP/UDP
RN-131 – Power Consumption
• Provides low power
• communication solution
• 4uA Power Consumption when idle
• 40 mA while active and connected
• 140 mA Power while active and transmitting