Proj-2013-2014-RobAIR-1-SRS

From air
Jump to navigation Jump to search

1. Introduction

1.1 Purpose of the requirements document

This Software Requirements Specification (SRS) identifies the requirements for the RobAIR project. The purpose of the present document is to explain how we organize our project, the different steps of the conception and the project achievement.

1.2 Scope of the product

  • The purpose of this project is to send and receive video by webRTC protocol. Moreover, we need to control ROBAIR with our graphic interface.
  • It is a low cost robot (well below the maket price).
  • The platform and software used for this robot are extensible and open-source.

1.3 Definitions, acronyms and abbreviations

  • WebRTC : Web Real-Time Communication is an API definition drafted by the World Wide Web Consortium (W3C) that supports browser-to-browser applications for voice calling, video chat, and P2P file sharing without plugins.
  • Arduino : It is a open-source board with a microcontroller, intended to make the application of interactive objects or environments more accessible.
  • ROS : Robot Operating System is a software framework for robot software development, (see also Robotics middleware) providing operating system-like functionality on a heterogeneous computer cluster.
  • telepresence: It is refers to a set of technologies which allow a person to feel as if they were present, to give the appearance of being present.
  • Ubuntu : is a computer operating system based on the Debian Linux distribution and distributed as free and open source software, using its own desktop environment.
  • P2P : Peer-to-Peer Protocol is an Application-layer protocol that can be used to form and maintain an overlay among participant nodes. It provides mechanisms for nodes to join, leave, publish, or search for a resource-object in the overlay.

1.4 References

- www.html5rocks.com
- www.w3.org (official documentation)
- www.simpl.info

1.5 Overview of the remainder of the document

The rest of the SRS examines the specifications of the robAIR2014 project in details. Section two of the SRS presents the general factors that affect the robAIR and its requirements, such as user characteristics and project constraints. Section three outlines the detailed, specific and functional requirements, performance, system and other related requirements of the project. Supporting information about appendices is provided in Section three.

2. General description

2.1 Product perspective

At first, the user goal is very simple. In fact, he just need to log on our website on join robair connection. After that, he will be able to send/receive video conferance, control the robot with our graphic interface.
How will work our project ? The user will be connected by websocket to ROBAIR. Next, he will send/receive data (like move commande or video stream) by webrtc channel. When Robair receive the command, he will send it to ROS to do some actions (except stream).

2.2 Product functions

WebRTCConnection.png If a user want to join ROBAIR, he will click on "JoinRobair" button. If he want to shut down his stream video, he will click on "stop Video Stream" button. We need a ROS node to convert webrtc instructions to ROS.

The robot interface functions:

- Control the robot
- close/add stream video
- join/close channel to communicate with ROBAIR

2.3 User characteristics

The user doesn’t need to be familiar with programming and doesn't need a specific formation.
He just needs to know how to use a tablet and a television

2.4 General constraints

  • Platform constraints:
- ROS must operate on an Ubuntu platform.
- The Platform need some of this two browsers : chrome/mozilla
  • Environemental constraints:
- Wifi with Internet access for the robot and for the controller.
- The robot can’t climb up steep slopes.

2.5 Assumptions and dependencies

3.Specific requirements, covering functional, non-functional and interface requirements

  • document external interfaces,
  • describe system functionality and performance
  • specify logical database requirements,
  • design constraints,
  • emergent system properties and quality characteristics.

3.1 Requirement X.Y.Z (in Structured Natural Language)

Requirement : skype must be installed, internet connection between us application and robair, battery charged, access to steering commands the robot, all requirements of last years projects, ROS is used only on Linux systems

Function: receive video trafic, put it on us interface and add directional buttun for control robair remotely via skype encoding (for VoIP)

Description: use skype interface for video-conference to allow us to control robair

Inputs: webcam, press buttun

Source: directional button, webcam, skype

Outputs: webcam, directions information

Destination: robair for the direction, robair and us application for the video

Action:

  • Natural language sentences (with MUST, MAY, SHALL)
  • Graphical Notations : UML Sequence w/o collaboration diagrams, Process maps, Task Analysis (HTA, CTT)
  • Mathematical Notations
  • Tabular notations for several (condition --> action) tuples

Non functional requirements:

Pre-condition:

  • materials conditions:
- A RobAIR 2013 connected in the selected place.
- A ubuntu server connected to a display device and a camera.
- A android/windows/Linux tablet.
  • Software conditions:
- Install the RobAIR2013-Server software on the ubuntu server.
- Install the RobAIR2013 android application.
- skype must be used in the server and client.

Post-condition:

- The user can do videoconferencing with people who met the robot.
- The user can control the robot by us interface

Side-effects: latency? used a new interface and not skype interface

4. Product evolution

5. Appendices

5.1. SRS structure

The document is based on template of the Software Requirements Specification (SRS) inspired of the IEEE/ANSI 830-1998 Standard.

References:

6. Index