Difference between revisions of "Main Page"
(→Remote Control) |
(→Software repositories) |
||
(32 intermediate revisions by 10 users not shown) | |||
Line 2: | Line 2: | ||
= Welcome to the Elcano Project Wiki = | = Welcome to the Elcano Project Wiki = | ||
− | As the title says, WELCOME TO THE ELCANO PROJECT! Over the past few years many different teams have been working hard to create Cheap and Modular autonomy at the University of Washington Bothell. We are currently working on our first two prototypes which are now in the form of tricycles. With the use of affordable microcontrollers, such as the Arduino Mega 2560 and Raspberry PI, we are working towards creating Autonomy for anyone to rebuild anywhere, and that under $2000 and fully open-source. But we don't plan to stop there, no. That is just the first step in reaching our ultimate goal, which is making our systems applicable to any desired ground vehicles, such as cars and other vehicles. Autonomy is nothing new, in fact it has been around for over 40 years, the difference is that now we have the ability to make it available for anyone who desires | + | As the title says, WELCOME TO THE ELCANO PROJECT! Over the past few years, many different teams have been working hard to create Cheap and Modular autonomy at the University of Washington Bothell. We are currently working on our first two prototypes which are now in the form of tricycles. With the use of affordable microcontrollers, such as the Arduino Mega 2560 and Raspberry PI, we are working towards creating Autonomy for anyone to rebuild anywhere, and that under $2000 and fully open-source. But we don't plan to stop there, no. That is just the first step in reaching our ultimate goal, which is making our systems applicable to any desired ground vehicles, such as cars and other vehicles. Autonomy is nothing new, in fact, it has been around for over 40 years, the difference is that now we have the ability to make it available for anyone who desires to further their knowledge or simply finding a safer way to work. |
+ | |||
+ | Visit our github repository [//https://github.com/elcano here]. | ||
To '''edit articles''' or '''upload files''', please create an account and request editing rights from a [//www.elcanoproject.org/wiki/index.php?title=Special:ListUsers&group=bureaucrat member of the "bureaucrat" group]. | To '''edit articles''' or '''upload files''', please create an account and request editing rights from a [//www.elcanoproject.org/wiki/index.php?title=Special:ListUsers&group=bureaucrat member of the "bureaucrat" group]. | ||
− | For editing help visit https://www.mediawiki.org/wiki/Help:Editing_pages or https://www.mediawiki.org/wiki/Help:Formatting. | + | For editing, help visit https://www.mediawiki.org/wiki/Help:Editing_pages or https://www.mediawiki.org/wiki/Help:Formatting. |
-------- | -------- | ||
[[File:Catrikes.JPG|1000px]] | [[File:Catrikes.JPG|1000px]] | ||
== [[ElcanoIntro | Overview]] == | == [[ElcanoIntro | Overview]] == | ||
− | + | The basic concept of how the Elcano Project vehicle works. | |
== [[System Architecture]] == | == [[System Architecture]] == | ||
How processors connect to sensors, each other, actuators, and other hardware. Includes processor-to-processor communication protocol. | How processors connect to sensors, each other, actuators, and other hardware. Includes processor-to-processor communication protocol. | ||
+ | |||
+ | == [[Communication | Communication (CAN Bus)]] == | ||
+ | How processors exchange data on the vehicle and a description of data packet contents. | ||
== [[Power System]] == | == [[Power System]] == | ||
Line 19: | Line 24: | ||
== [[Low Level]] == | == [[Low Level]] == | ||
− | How the Low Level system uses inputs to control actuators to steer, move, and stop the vehicle. | + | How the Low-Level system (aka Drive-By_Wire) uses inputs to control actuators to steer, move, and stop the vehicle. |
== [[High Level]] == | == [[High Level]] == | ||
− | How the High Level system uses stored maps and inputs from navigational sensors to formulate movement instructions sent to Low Level. | + | How the High Level (aka Sensor Hub) system uses stored maps and inputs from navigational sensors to formulate movement instructions sent to Low Level. |
+ | |||
+ | Using a stored map of the area of operation, nodes will be created around the map as appropriate. The vehicle program will then implement Dijkstra's Algorithm to get from the starting node to the desired node. Should the vehicle encounter an impassable obstacle, it will revert to its most recent node visited and reimplement Dijkstra's Algorithm. However, this time, the pathing where the obstacle lies will be ignored to use a different path. | ||
+ | |||
+ | If an obstacle can be traversed around, then the vehicle will sense which side (left or right) of the path is being occupied by the obstacle. The vehicle will then veer to the left or right accordingly. There will be sensors to ensure that the vehicle won't go over the path edge, which could be dangerous. In this scenario, the vehicle will reverse and consider the obstacle impassable. | ||
== [[RemoteControl]] == | == [[RemoteControl]] == | ||
− | Human control of trike movements through Low Level using hardware connected to Low Level by a radio communication link (drive by radio). Includes | + | Human control of trike movements through Low Level using hardware connected to Low Level by a radio communication link (drive-by radio). Includes onboard controls (drive by wire). |
+ | |||
+ | == [[ Simulator]] == | ||
+ | Using the Open-source CARLA platform with a go-between board allows simulation. | ||
== [[SensorsPage]] == | == [[SensorsPage]] == | ||
+ | |||
+ | === [[SteeringSensor]] === | ||
+ | The front wheel angle detector. | ||
=== [[Sonar]] === | === [[Sonar]] === | ||
− | How the sonar subsystem connected to High Level works. | + | How the sonar subsystem connected to High-Level works. |
=== [[Lidar]] === | === [[Lidar]] === | ||
− | How the lidar subsystem connected to High Level works. | + | How the lidar subsystem connected to High-Level works. |
+ | |||
+ | The LiDAR sensor is able to detect the distance and angle of any object in its view. This data can be used by the high-level software to determine where an obstacle is located for the vehicle to avoid. | ||
=== [[ Camera]] === | === [[ Camera]] === | ||
− | How the camera and vision | + | How the camera and vision subsystem connected to High-Level works. |
+ | |||
+ | == [[ActuatorPage]] == | ||
== [[ Board Diagrams]] == | == [[ Board Diagrams]] == | ||
Images of Elcano Project's printed circuit boards for reference. PCB source files and schematics are maintained and stored at [//github.com/elcano]. | Images of Elcano Project's printed circuit boards for reference. PCB source files and schematics are maintained and stored at [//github.com/elcano]. | ||
− | == [[ | + | == Software development procedures == |
− | + | ||
+ | === [[Software repositories]] === | ||
+ | What's in each of our GitHub repositories. | ||
+ | |||
+ | Luke Kustra's repo: https://github.com/luke-kustra/JetHawk-LKustra.git | ||
+ | |||
+ | Luke's contribution was experimenting with the LiDAR sensor. He was able to get the LiDAR to deactivate and display information about its surroundings, including the number of objects and their distance from the LiDAR sensor. Of course, the sensor should never deactivate when in real use; however, this deactivation is proof that the LiDAR is ready to be utilized in a larger system such as a vehicle. | ||
+ | |||
+ | |||
+ | Henry Haight's repo: https://github.com/Autonomous-ATV-Capstone-Team-Sequence/-LIDAR | ||
+ | |||
+ | === [[Arduino software]] === | ||
+ | Getting started; references; development tools. Dealing with libraries and different parameters for each vehicle. | ||
+ | === [[Using Git and GitHub]] === | ||
+ | Practices for maintaining code and source files on Elcano Project's GitHub repositories. | ||
==[[FilesPage | Files]] == | ==[[FilesPage | Files]] == | ||
− | These are media files (pictures, videos, etc.) that are part of the project | + | These are media files (pictures, videos, etc.) that are part of the project but are not maintained under version control. |
== Elcano Project Main Website == | == Elcano Project Main Website == | ||
* [//www.elcanoproject.org] | * [//www.elcanoproject.org] |
Latest revision as of 20:09, 22 August 2025
Contents
- 1 Welcome to the Elcano Project Wiki
Welcome to the Elcano Project Wiki
As the title says, WELCOME TO THE ELCANO PROJECT! Over the past few years, many different teams have been working hard to create Cheap and Modular autonomy at the University of Washington Bothell. We are currently working on our first two prototypes which are now in the form of tricycles. With the use of affordable microcontrollers, such as the Arduino Mega 2560 and Raspberry PI, we are working towards creating Autonomy for anyone to rebuild anywhere, and that under $2000 and fully open-source. But we don't plan to stop there, no. That is just the first step in reaching our ultimate goal, which is making our systems applicable to any desired ground vehicles, such as cars and other vehicles. Autonomy is nothing new, in fact, it has been around for over 40 years, the difference is that now we have the ability to make it available for anyone who desires to further their knowledge or simply finding a safer way to work.
Visit our github repository here.
To edit articles or upload files, please create an account and request editing rights from a member of the "bureaucrat" group.
For editing, help visit https://www.mediawiki.org/wiki/Help:Editing_pages or https://www.mediawiki.org/wiki/Help:Formatting.
Overview
The basic concept of how the Elcano Project vehicle works.
System Architecture
How processors connect to sensors, each other, actuators, and other hardware. Includes processor-to-processor communication protocol.
Communication (CAN Bus)
How processors exchange data on the vehicle and a description of data packet contents.
Power System
How different modules connect to the batteries or power subsystem hardware.
Low Level
How the Low-Level system (aka Drive-By_Wire) uses inputs to control actuators to steer, move, and stop the vehicle.
High Level
How the High Level (aka Sensor Hub) system uses stored maps and inputs from navigational sensors to formulate movement instructions sent to Low Level.
Using a stored map of the area of operation, nodes will be created around the map as appropriate. The vehicle program will then implement Dijkstra's Algorithm to get from the starting node to the desired node. Should the vehicle encounter an impassable obstacle, it will revert to its most recent node visited and reimplement Dijkstra's Algorithm. However, this time, the pathing where the obstacle lies will be ignored to use a different path.
If an obstacle can be traversed around, then the vehicle will sense which side (left or right) of the path is being occupied by the obstacle. The vehicle will then veer to the left or right accordingly. There will be sensors to ensure that the vehicle won't go over the path edge, which could be dangerous. In this scenario, the vehicle will reverse and consider the obstacle impassable.
RemoteControl
Human control of trike movements through Low Level using hardware connected to Low Level by a radio communication link (drive-by radio). Includes onboard controls (drive by wire).
Simulator
Using the Open-source CARLA platform with a go-between board allows simulation.
SensorsPage
SteeringSensor
The front wheel angle detector.
Sonar
How the sonar subsystem connected to High-Level works.
Lidar
How the lidar subsystem connected to High-Level works.
The LiDAR sensor is able to detect the distance and angle of any object in its view. This data can be used by the high-level software to determine where an obstacle is located for the vehicle to avoid.
Camera
How the camera and vision subsystem connected to High-Level works.
ActuatorPage
Board Diagrams
Images of Elcano Project's printed circuit boards for reference. PCB source files and schematics are maintained and stored at [1].
Software development procedures
Software repositories
What's in each of our GitHub repositories.
Luke Kustra's repo: https://github.com/luke-kustra/JetHawk-LKustra.git
Luke's contribution was experimenting with the LiDAR sensor. He was able to get the LiDAR to deactivate and display information about its surroundings, including the number of objects and their distance from the LiDAR sensor. Of course, the sensor should never deactivate when in real use; however, this deactivation is proof that the LiDAR is ready to be utilized in a larger system such as a vehicle.
Henry Haight's repo: https://github.com/Autonomous-ATV-Capstone-Team-Sequence/-LIDAR
Arduino software
Getting started; references; development tools. Dealing with libraries and different parameters for each vehicle.
Using Git and GitHub
Practices for maintaining code and source files on Elcano Project's GitHub repositories.
Files
These are media files (pictures, videos, etc.) that are part of the project but are not maintained under version control.