PilotPage

From Elcano Project Wiki
Jump to navigation Jump to search


C3 processor (now part of High Level)

This Arduino Micro processor was in charge of piloting the trike as well as:

  • processes Data from other modules
  • based on this data decides the speed of the vehicle
  • as well as turn angle

Obstacle Avoidance

The Pilot section of the High Level system has the task of modifying the course to avoid obstacles. It receives obstacle information over the CAN bus from the Scanse Sweep (lidar) and potentially from vision. Sonar obstacle information is transmitted over an SPI interface.

Specification

The Elcano system shall be able to determine the presence of obstacles, and respond appropriately to these obstacles. The system shall prevent the vehicle from ever colliding with an obstacle. To avoid obstacles, the system shall gather data from sensors in use, interpret this data, and determine the change to make to the vehicle’s speed and turn angle.

Sensors

This is a list of sensors which will be used to obtain information about the vehicle’s surroundings.

Sonar

A board containing a set of sonar sensors arranged in a semicircle has already been produced. This system is already available to be tested; however, the sonar sensors have issues with noise and have a low range (exact range?).

Scanse Sweep

The Scanse Sweep is a spinning lidar device; the spinning head eliminates(?) the need to have multiple sensors for different angles. This device has a range of 40 meters. It may be useful enough to replace the existing sonar board; however, as of June 22, 2017, the Scanse Sweep sensors have not yet arrived.

Store Page (as of June 22, 2017): https://www.sparkfun.com/products/14117

Vision

The Raspberry Pi component for computer vision obstacle detection is currently being developed. It may be possible to use data from this component for the obstacle avoidance algorithm.

Processor Configuration

The sensors and their corresponding processors(?) will provide data to the C3 Pilot Arduino. The C3 Pilot will use this data to determine whether there is an obstacle present that will affect the vehicle path, and the C3 pilot adjusts the vehicle speed and turn angle accordingly.

Operation Requirements

Collision Avoidance

The vehicle shall avoid collision with any obstacle. To avoid obstacles, the vehicle may stop, slow down, or turn left or right.

Before making a turn, the vehicle should consider the presence of obstacles to the left or right of itself.

Pathfinding

The vehicle should consider the path it is supposed to take when it makes decisions to avoid obstacles. The C3 pilot shall use data from the C4 Planner and/or C5 Navigator to choose the best way to avoid any obstacle, so that the vehicle does not unnecessarily deviate from its path(?).

The vehicle should take the road width into consideration so that it does not drive off of the road.

If possible, the vehicle should be able to backtrack if it comes to a dead end. (As of June 22, 2017, the vehicle is not capable of driving in reverse.)

Interface

The algorithm should be easily connected to the sonar component, the lidar component, or the vision component. The C3 Pilot should make use of whatever data is available to it. If multiple sensor components are connected to the C3 Pilot, The C3 Pilot should have a means to choose the most accurate data, combine the data to get a more accurate survey of the vehicle surroundings, etc.

HighLevel board

C3 to C5 SPI (Serial Peripheral Interface) Communication

The way this communication is set up may look difficult at first, but with a closer look it is actually quite simple. Both on the C5 Sonar board and the printed Highlevel main board you will find various chips, most commonly designated with the letters "IC" (Integrated Circuits) or "V". The ICs used for SPI communication are DS 8291N chips designated as IC2 and IC3 on the HighLevel board and V1 and V2 on the Sonar board.

  • Test board constructed to provide correct wiring reference for noise reduction chip setup:

<img src="%PUBURLPATH%/%WEB%/%TOPIC%/C3-C5_SPI_test_board.png" alt="C3-C5_SPI_test_board.png" width="873.5" height="369" />


NEXT > HighLevelSWv3