V Project Overview The Mars Ground Control Group is responsible for handling communications to and from a rover in a test area simulating a Martian or.

Slides:



Advertisements
Similar presentations
CIMCO Integration Software Products
Advertisements

TCP/IP MODEL Maninder Kaur
Chapter 17 Networking Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design Principles, 6/E William.
Umut Girit  One of the core members of the Internet Protocol Suite, the set of network protocols used for the Internet. With UDP, computer.
A component- and message-based architectural style for GUI software
CCNA – Network Fundamentals
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 OSI Transport Layer Network Fundamentals – Chapter 4.
A CHAT CLIENT-SERVER MODULE IN JAVA BY MAHTAB M HUSSAIN MAYANK MOHAN ISE 582 FALL 2003 PROJECT.
1 © 2003, Cisco Systems, Inc. All rights reserved. CCNA 1 v3.0 Module 11 TCP/IP Transport and Application Layers.
The Laboratory of Computer Communication and Networking SRP Simulation Over Ethernet.
Lesson 20 – OTHER WINDOWS 2000 SERVER SERVICES. DHCP server DNS RAS and RRAS Internet Information Server Cluster services Windows terminal services OVERVIEW.
Graphics and Client Design Overall Game Design Doug Camin.
(NHA) The Laboratory of Computer Communication and Networking Network Host Analyzer.
Simultaneous Localization and Map Building System for Prototype Mars Rover CECS 398 Capstone Design I October 24, 2001.
Cambodia-India Entrepreneurship Development Centre - : :.... :-:-
Gursharan Singh Tatla Transport Layer 16-May
Evolved from ARPANET (Advanced Research Projects Agency of the U.S. Department of Defense) Was the first operational packet-switching network Began.
Connecting LANs, Backbone Networks, and Virtual LANs
1 Introduction to Web Development. Web Basics The Web consists of computers on the Internet connected to each other in a specific way Used in all levels.
Process-to-Process Delivery:
CN2668 Routers and Switches Kemtis Kunanuraksapong MSIS with Distinction MCTS, MCDST, MCP, A+
11 NETWORK PROTOCOLS AND SERVICES Chapter 10. Chapter 10: Network Protocols and Services2 NETWORK PROTOCOLS AND SERVICES  Identify how computers on TCP/IP.
1 Chapter Internetworking Part 4 (Transport Protocols, UDP and TCP, Protocol Port Numbers)
By: Joel Rodriguez.  International student from Mexico  Delicias, Chihuahua Mexico  Spanish  Sports and Music.
Chapter 4: Managing LAN Traffic
TCP/IP protocols Communication over Internet is mostly TCP/IP (Transmission Control Protocol over Internet Protocol) TCP/IP "stack" is software which allows.
Hands-On Microsoft Windows Server 2003 Networking Chapter Three TCP/IP Architecture.
Chapter 17 Networking Dave Bremer Otago Polytechnic, N.Z. ©2008, Prentice Hall Operating Systems: Internals and Design Principles, 6/E William Stallings.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
70-291: MCSE Guide to Managing a Microsoft Windows Server 2003 Network Chapter 3: TCP/IP Architecture.
What is a Protocol A set of definitions and rules defining the method by which data is transferred between two or more entities or systems. The key elements.
1 Chapter Client-Server Interaction. 2 Functionality  Transport layer and layers below  Basic communication  Reliability  Application layer.
13/09/2015 Michael Chai; Behrouz Forouzan Staffordshire University School of Computing Transport layer and Application Layer Slide 1.
1 GAIA VoIP traffic generator and analyzer Presentation by Amrut Bang Ashish Deshpande Vijay Gabale Santosh Patil Sponsored by GS Lab Pvt. Ltd Pune Institute.
A 2-D, multi-player tank game developed in PLT Scheme ~ ~ ~ Ben VandenBos, Tim Reeves, Justin Hall, and John Ericksen ~ ~ ~ Senior Project - CS496 Spring.
Protocols and the TCP/IP Suite
© 2008 Cisco Systems, Inc. All rights reserved.Cisco ConfidentialPresentation_ID 1 Chapter 7: Transport Layer Introduction to Networking.
LWIP TCP/IP Stack 김백규.
Software Framework for Teleoperated Vehicles Team Eye-Create ECE 4007 L01 Karishma Jiva Ali Benquassmi Safayet Ahmed Armaghan Mahmud Khin Lay Nwe.
Robotics Simulation (Skynet) Andrew Townsend Advisor: Professor Grant Braught.
Bootstrap and Autoconfiguration Chapter 23. Introduction Each computer attached to a TCP/IP internet needs to know: –its IP address –the address of a.
Digital Multimedia, 2nd edition Nigel Chapman & Jenny Chapman Chapter 17 This presentation © 2004, MacAvon Media Productions Multimedia and Networks.
1 Mars Rover Ground Control Team Design Review Report Week 3 Tim Hermann - Ben Davini - Jose Angulo - Ryan Morton CPE450 Winter
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 2.5 Internetworking Chapter 25 (Transport Protocols, UDP and TCP, Protocol Port Numbers)
Computer Emergency Notification System (CENS)
1 Networking Chapter Distributed Capabilities Communications architectures –Software that supports a group of networked computers Network operating.
CCNA 1 v3.0 Module 11 TCP/IP Transport and Application Layers.
Exploring Office 2003 – Grauer and Barber HTML And Basic Web page.
Multimedia and Networks. Protocols (rules) Rules governing the exchange of data over networks Conceptually organized into stacked layers – Application-oriented.
World Wide Web “WWW”, "Web" or "W3". World Wide Web “WWW”, "Web" or "W3"
Logic Analyzer ECE-4220 Real-Time Embedded Systems Final Project Dallas Fletchall.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Connecting Devices CORPORATE INSTITUTE OF SCIENCE & TECHNOLOGY, BHOPAL Department of Electronics and.
CS 6401 Introduction to Computer Networks 09/21/2010 Outline - UNIX sockets - A simple client-server program - Project 1 - LAN bridges and learning.
Digital Multimedia, 2nd edition Nigel Chapman & Jenny Chapman Chapter 17 This presentation © 2004, MacAvon Media Productions Multimedia and Networks.
Reconfigurable Communication Interface Between FASTER and RTSim Dec0907.
System Design for Home Automaton. Design Goals Performance Criteria – Server prioritizes client requests to provide quick response time to critical requests.
4343 X2 – The Transport Layer Tanenbaum Ch.6.
McGraw-Hill Chapter 23 Process-to-Process Delivery: UDP, TCP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
TCP/IP1 Address Resolution Protocol Internet uses IP address to recognize a computer. But IP address needs to be translated to physical address (NIC).
1 Network Communications A Brief Introduction. 2 Network Communications.
1 K. Salah Application Layer Module K. Salah Network layer duties.
VIRTUAL NETWORK COMPUTING SUBMITTED BY:- Ankur Yadav Ashish Solanki Charu Swaroop Harsha Jain.
IST 201 Chapter 11 Lecture 2. Ports Used by TCP & UDP Keep track of different types of transmissions crossing the network simultaneously. Combination.
Chapter Objectives In this chapter, you will learn:
Home Automation System
ECEN “Internet Protocols and Modeling”
Process-to-Process Delivery:
Time Gathering Systems Secure Data Collection for IBM System i Server
Process-to-Process Delivery: UDP, TCP
Presentation transcript:

v Project Overview The Mars Ground Control Group is responsible for handling communications to and from a rover in a test area simulating a Martian or lunar environment. The group is also responsible for robot localization and communicating rover sensor data, metrics, and location to the user. Clients: Professor Al Liddicoat, Lockheed-Martin, and the rover group Mars Sandbox - Ground Control Team California Polytechnic State University CPE Capstone – Fall ‘07/Winter ‘08 Tim HermannJose Angulo Ben DaviniRyan Morton c Satellite Ground Control Server Mars Rover Communication Server Internal Sockets Ground Control Client and GUI Robot /Ethe rnet Localization Beacons Ultrasound/RF System Architecture Communications UML Diagram Communication Black Box Design Use Case Diagram The Communication Black Box provides a bridge for data transfer between the TCP clients and the UDP rovers. Inside, data can be manipulated by introducing artificial delay, corruption, and data loss. All communications classes are threaded. This allows any implementing class to use the framework in a non-blocking fashion. The overall design of the various classes attempted to abstract away the use of UDP versus TCP for ease of implementation. As a result, the abstraction of a Packet class was created to hold both the data buffer sent or received, as well as information related to where it’s going, which client it was associated with, et cetera. The Client class is used by the TCP Server to represent a connected client, and by the TCP Client to be the method through which data is transferred. It does not directly inherit AsyncCommunicationsBase because of conceptual differences between its background worker implementation compared to the asynchronous callbacks used by all other classes. Communications GUI The front end for the Communications Black Box allows binding to any available local IP address. At startup, the Configure Server window appears, querying the local host for DNS information. Once Start is pressed, the Server Status window appears. This provides an at-a-glance look at the server. Various parameters related to the communication black box can be set, and a list of connected clients, as well as registered rovers, may be accessed from the Clients menu. Remote Control Conclusion The Ground Control project was completed on schedule with main project goals satisfied. The current system allows localization, communication, and control across multiple clients and with various network technologies, and can be set up with relative ease. More advanced features on the satellite such as delay, corruption, and image transmission were dropped due to not being feature complete by the integration deadline. The localization technology can be improved with an increased number of beacons and further research on localization technologies. These improvements have been documented such that future groups should be able to implement these features without much difficulty System Integration and Test The separate components (GUI, simulated Satellite, and Localization software) were developed independently but cognizant of system integration requirements. The modularity of each component is such that testing and integration of the entire system was done quickly and efficiently. Testing first took place with environments and software that tested each component individually. A miniature sandbox was created for localization and integration testing. Full system testing included a test program on a laptop that communicated with the satellite server over TCP/IP. Because no rover was available for full integration testing, the laptop was moved manually in the miniature sandbox to simulate rover movement. Functionality was confirmed by receipt of messages and an updated graphical map on the GUI. Localization Implement delay, corruption, and variance Implement disconnect functionality for connected clients or rovers. Extend logging capabilities to handle priority and saving to file Display picture/video feed Implement selectable interface between multiple client rovers Dynamically match GUI map to sandbox dimensions Add/remove sensor fields to match rover sensors Implement and return z component Improve erroneous distance measurement Improve time response of getCoord() function Communication Remote Control Future Work Localization (x 0,y 0 ) (x 1,y 1 ) r0r0 r1r1 d h d Figure X: Intersection of two circles as an abstraction to intersecting spheres in 3D. The any triangle of side r a, d, and h along with center of circle (x a, y a ) can be used to find intersection points Figure X: Graphical depiction of hardware architecture. Listeners determine distance to each beacon by measuring time shift between arrival times of RF and ultrasonic signals (simultaneously sent by beacon) Overview The localization system uses the Cricket indoor beacon system shown in figure X. The location (x,y) of the listener cricket can be calculated based on the distances to each of the four overhead beacons and their respective (known) locations. These distance calculations use the difference in arrival times of the RF and ultrasonic signal and the known speed of sound and light. Figure X: Cricket indoor beacon produced by Crossbow Technology, Inc and developed by MIT. Operation Two threads of control allow for quicker results and limit the impact on system timing. One thread continually reads serial port, parses input and stores distances. The client thread (robot) calls a C function to calculate the robot coordinates (x,y). The localization software calculates the location of the listener based on the distances to each of the four beacons using trigonometry and intersections between circles (see figure X). With four beacons there are six circle-circle intersections resulting in twelve possible (x,y) coordinates. The algorithm takes these twelve points and determines the most probable coordinates. Error Reduction The cricket listener-to-beacon distance measurement has a 1 cm precision. This precision coupled with the non-linear calculations using trigonometric functions for the intersection points inherently contains errors. In fact, the probability of six circles intersecting at the exact coordinate of the listener essentially equals zero. Using timestamp info from beacon distance receipt and the number of intersections within threshold distance of convergence point the function returns a probability value (0,1) stating confidence in value returned. Iterative approaches to improving environmental were used with vectors to determine which beacon values caused most error.