Ryan Rasmussen Maggie Krause Jiajun Yang. Hardware Progress Mechanical assembly complete Received APM case and power module last week Connected wi-fi.

Slides:



Advertisements
Similar presentations
Media Player for the i.MX31 Advanced Embedded Systems Architecture Class Project May 14, 2011 Rafael Castro Ryan Ugland Carlos Cabral.
Advertisements

Software Frame Simulator (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007.
System Security Scanning and Discovery Chapter 14.
Slide 1 Client / Server Paradigm. Slide 2 Outline: Client / Server Paradigm Client / Server Model of Interaction Server Design Issues C/ S Points of Interaction.
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 24 Network Management: SNMP.
A CHAT CLIENT-SERVER MODULE IN JAVA BY MAHTAB M HUSSAIN MAYANK MOHAN ISE 582 FALL 2003 PROJECT.
© 2009 Research In Motion Limited Methods of application development for mobile devices.
1 ITC242 – Introduction to Data Communications Week 12 Topic 18 Chapter 19 Network Management.
Software Frameworks for Acquisition and Control European PhD – 2009 Horácio Fernandes.
© Lethbridge/Laganière 2001 Chap. 3: Basing Development on Reusable Technology 1 Let’s get started. Let’s start by selecting an architecture from among.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment Chapter 8: Implementing and Managing Printers.
Lesson 1: Configuring Network Load Balancing
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment, Enhanced Chapter 8: Implementing and Managing Printers.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment Chapter 8: Implementing and Managing Printers.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Chapter 2: Operating-System Structures Modified from the text book.
TCP: Software for Reliable Communication. Spring 2002Computer Networks Applications Internet: a Collection of Disparate Networks Different goals: Speed,
VSP Video Station Protocol Presented by : Mittelman Dana Ben-Hamo Revital Ariel Tal Instructor : Sela Guy Presented by : Mittelman Dana Ben-Hamo Revital.
Remote Surveillance Vehicle Design Review By: Bill Burgdorf Tom Fisher Eleni Binopolus-Rumayor.
McGraw-Hill The McGraw-Hill Companies, Inc., 2000 SNMP Simple Network Management Protocol.
Chapter 26 Client Server Interaction Communication across a computer network requires a pair of application programs to cooperate. One application on one.
By: Joel Rodriguez.  International student from Mexico  Delicias, Chihuahua Mexico  Spanish  Sports and Music.
Wave Relay System and General Project Details. Wave Relay System Provides seamless multi-hop connectivity Operates at layer 2 of networking stack Seamless.
UNIX System Administration OS Kernal Copyright 2002, Dr. Ken Hoganson All rights reserved. OS Kernel Concept Kernel or MicroKernel Concept: An OS architecture-design.
Understanding the CORBA Model. What is CORBA?  The Common Object Request Broker Architecture (CORBA) allows distributed applications to interoperate.
Protocol Architectures. Simple Protocol Architecture Not an actual architecture, but a model for how they work Similar to “pseudocode,” used for teaching.
An intro to programming. The purpose of writing a program is to solve a problem or take advantage of an opportunity Consists of multiple steps:  Understanding.
High-Availability Linux.  Reliability  Availability  Serviceability.
Protocols and the TCP/IP Suite
Software Framework for Teleoperated Vehicles Team Eye-Create ECE 4007 L01 Karishma Jiva Ali Benquassmi Safayet Ahmed Armaghan Mahmud Khin Lay Nwe.
Introduction to Interprocess communication SE-2811 Dr. Mark L. Hornick 1.
Eric Keller, Evan Green Princeton University PRESTO /22/08 Virtualizing the Data Plane Through Source Code Merging.
1 Apache. 2 Module - Apache ♦ Overview This module focuses on configuring and customizing Apache web server. Apache is a commonly used Hypertext Transfer.
Presented by: Sanketh Beerabbi University of Central Florida COP Cloud Computing.
Module 12: Routing Fundamentals. Routing Overview Configuring Routing and Remote Access as a Router Quality of Service.
Cisco S2 C4 Router Components. Configure a Router You can configure a router from –from the console terminal (a computer connected to the router –through.
© 2008 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice Introduction to HP Availability Manager.
NIMBUS CONOPS Maggie Krause, Ryan Rasmussen, Caleb Fangmeier, Brett Mahnke, and Jiajun Yang.
Chapter 14 Part II: Architectural Adaptation BY: AARON MCKAY.
Computer Emergency Notification System (CENS)
CE Operating Systems Lecture 3 Overview of OS functions and structure.
© Lethbridge/Laganière 2005 Chap. 3: Basing Development on Reusable Technology The Client-Server Architecture A distributed system is a system in.
Application Block Diagram III. SOFTWARE PLATFORM Figure above shows a network protocol stack for a computer that connects to an Ethernet network and.
1 Chapter 28 Networking. 2 Objectives F To comprehend socket-based communication in Java (§28.2). F To understand client/server computing (§28.2). F To.
802.11n Sniffer Design Overview Vladislav Mordohovich Igor Shtarev Luba Brouk.
System integration of WAP and SMS for home network system Editor : Chi-Hsiang Wu, Rong-Hong Jan School : the National Chiao Tung University Source : Computer.
Experiment Management System CSE 423 Aaron Kloc Jordan Harstad Robert Sorensen Robert Trevino Nicolas Tjioe Status Report Presentation Industry Mentor:
 Load balancing is the process of distributing a workload evenly throughout a group or cluster of computers to maximize throughput.  This means that.
Jini Architecture Introduction System Overview An Example.
Abstract A Structured Approach for Modular Design: A Plug and Play Middleware for Sensory Modules, Actuation Platforms, Task Descriptions and Implementations.
Unit 9: Distributing Computing & Networking Kaplan University 1.
Configuration Mapper Sonja Vrcic Socorro,
August 2003 At A Glance The IRC is a platform independent, extensible, and adaptive framework that provides robust, interactive, and distributed control.
ISecurity End of Semester Presentation November 29, 2012.
© 2008 by Wind River; made available under the EPL v1.0 | 19-Nov-2008 TCF The Target Communication Framework Michael Scharf, Wind River wiki.eclipse.org/DSDP/TM/TCF_FAQ.
Lesson 1 1 LESSON 1 l Background information l Introduction to Java Introduction and a Taste of Java.
Messanger IMDL 2014 with A. Antonio Arroyo, PhD Eric M. Schwartz, PhD By: Revant shah 03/20/2014.
Final Presentation Smart-Home Smart-Switch using Arduino
© 2002, Cisco Systems, Inc. All rights reserved..
Wednesday NI Vision Sessions
Monitoring Dynamic IOC Installations Using the alive Record Dohn Arms Beamline Controls & Data Acquisition Group Advanced Photon Source.
Cisco Routers Routers collectively provide the main feature of the network layer—the capability to forward packets end-to-end through a network. routers.
IST 201 Chapter 11 Lecture 2. Ports Used by TCP & UDP Keep track of different types of transmissions crossing the network simultaneously. Combination.
Advanced Network Labs & Remote Network Agent
NDN-Android: NDN Networking Stack for Android Platform
Progress Apama Fundamentals
<Add team picture or relevant project picture here>
Beyond HTTP Up to this point we have been dealing with software tools that run on browsers and communicate to a server that generates files that can be.
#01 Client/Server Computing
Using the Parallel Universe beyond MPI
#01 Client/Server Computing
Presentation transcript:

Ryan Rasmussen Maggie Krause Jiajun Yang

Hardware Progress Mechanical assembly complete Received APM case and power module last week Connected wi-fi module in January but have encountered several problems so far

Hardware Problems  APM and Xbee Explorer not compatible without modification Dr. Detweiler removed a diode and soldered additional resistors  First wi-fi module is no longer functional, now using spare We are not sure how it broke, possibly hooked up incorrectly?  Initially used TCP connection, but discovered that when the connection is lost, it was very difficult to recover Now using UDP, which requires connecting to module with static IP  Several connection problems when working in NIMBUS Lab Sponsors said they have always encountered wi-fi problems in the building We don’t have the same problems when using outside the lab

Progress  First semester was focused on assembly and choosing communication hardware  This semester is focused on software with two major goals Direct connection to phone, which will display copter status and send basic commands Adding node to existing NIMBUS framework to allow the lab’s ROS system to communicate with the copter’s MAVlink system  Separation of tasks NIMBUS Integration – Maggie iOS App – Jiajun Android App - Ryan

NIMBUS Integration: ROS Overview  Robot Operating System (ROS) Open-source "meta-operating system" for communicating with robots Built to be modular and adaptable Provides a host of command-line tools for testing and development rosmake, rosrun, roslaunch, rxgraph, etc.

ROS Concepts  Uses a Computation Graph: a network of communicating nodes  Node: A process that performs a specific computation  Topic: A stream of messages published by a node and subscribed to by one or many nodes  Message: a data structure with typed fields, used for sending info or commands  Others: Manifests, stacks, services, bags

NIMBUS ROS System  Runs on Linux, uses ROS system MITAscTec  MITAscTec Collection of packages for communicating with and monitoring drones Capabilities: ○ GUI interface for sending state- based commands ○ Integration with Vicon infrared camera system in NIMBUS lab and GPS for positioning ○ Remote access capabilities ○ Serial communication with drone using XBee module I/O cluster State machine Control cluster Drone

Progress: MAVLink/ROS Node Integration  Quadcopter uses MAVLink protocol, but MITAscTec uses AscTec protocol Need for intermediate node to translate  Integrating an open-source node Install MAVLink/ROS package Determine placement of new node and create launch files specifying node and topic configuration MAVLink/ROS package: ○ Outbound data translated from AscTec protocol to MAVLink ○ Inbound data translated from MAVLink to AscTec protocol

Progress: Integration  Sending commands: ROS command input /a/robot_trans translates command to AscTec, /a/robot_prot handles AscTec protocol MAVLink node translates AscTec to MAVLink and sends commands, receives data similarly

Future Plans: Integration  Test MAVLink inbound node by receiving status/heartbeat (no outbound components)  Test MAVLink outbound node with Vicon launch configuration (Relies on input from Vicon camera system)  Make alterations to MAVLink/ROS node based on differences between MAVLink and ArduCopter protocols  Build other launch configurations once MAVLink/ROS node is tested

iOS App Status  Ability to communicate with APM using UDP  When app starts, it detects heartbeat from APM and extracts APM system ID, which is then used to request a data stream that contains status information  App also accesses iPhone GPS to get current location which will be used to implement “Follow Me” function

iOS App Implementation  MAVlink is a messaging library only available in C  iOS Objective-C allows for easy integration of MAVlink library with no modification Thinking more on the stream pack(ByteBuffer) when send and receive  Using open source iOS code (AsyncUdpSocket) to implement UPD communication Easy to sent with the port and IP address, and receive Objective-C type Data with action immediately.  Wrote the phone GPS class with the Objective-C framework.

Next Plan  Done on the display part  Available for send actually command.  Test outside with iPhone.

Android App Status  Ability to communicate using UDP and display all copter status info  Notifies user if connection is lost  All commands are implemented, but so far only Arm/Disarm is confirmed to be working  Access to Android GPS for “Follow Me” coordinates

Android App Implementation  Attempted to implement MAVlink library using JNI Ended up writing Java classes to implement messages and commands Only implement messages we need (about 15) Involved working with raw byte data (ByteArray, ByteBuffer)  Wrote custom class for UDP connection that implements InputStream Same functions as TCP InputStream (avoid refactoring code)  Utilizing Android AsyncTask Main thread is reserved for UI AsyncTask allows you to easily launch tasks in a new thread One thread is dedicated to receiving and unpacking UDP communication Each command launches an AsyncTask to send command and wait for acknowledgement from APM

Setbacks/Problems  Testing commands must be done outside Requires GPS Weather not cooperative Requirement from sponsors that at least 2 people are present  How did wi-fi module break?  Replacing parts after crashes is time consuming. Currently need to replace at least one motor

Setbacks/Problems ctd...  ArduCopter does not implement all MAVlink commands Makes potentially easy commands much harder to implement (Takeoff)  ArduCopter has made several modifications that are not documented Requires going through source code in detail May add difficulty to implementation of NIMBUS node  Implemented commands on Android currently not working Takeoff and Land commands were not working as of last week Guided Mode vs. Auto Mode? ArduCopter does not implement MAVlink Takeoff command, which may require sending mission script to copter and changing flight mode and throttle level

DEMO