|
|
(157 intermediate revisions by 2 users not shown) |
Line 1: |
Line 1: |
| Small robot intended for control-1 exercises.
| |
|
| |
|
| [[File:regbot-final.png|200px]] | | REGBOT is a small robot designed for exercises for our linear control 1 course (PID control) ([http://www.dtu.dk/english/Service/Phonebook/Person?id=14453 author]). |
|
| |
|
| ==Hardware status==
| | [[file:foto_of_Alba_40.png | 250px]] |
|
| |
|
| REGBOT comes in 2 versions:
| | Figur 1. Version 2 of Regbot. |
| * version 2A - with robot number 1..15
| |
| * version 2B - with robot number 16..36
| |
| [[REGBOT robot status]]
| |
|
| |
|
| ==Software download== | | == Overview == |
|
| |
|
| *Robot software (regbot.hex): 2.124
| | This section is intended for users. |
|
| |
|
| *Client software for windows (regbot.exe): 2.124
| | [[Getting started]] with REGBOT GUI. |
|
| |
|
| (as of September, 2015)
| | [[User interface]], how to configure the robot using the Regbot client. |
|
| |
|
| repository for software - client and robot
| | [[Control]] overview gives some information on control possibilities. |
|
| |
|
| * client: svn://repos.gbar.dtu.dk/jcan/regbot/qtgui
| | [[Mission]], how to write a mission. |
| * robot: svn://repos.gbar.dtu.dk/jcan/regbot/regbot
| |
|
| |
|
| On a Linux computer do something like this:
| | [[Regbot calibration]] for better performance. |
| svn co svn://repos.gbar.dtu.dk/jcan/regbot/regbot .
| |
| svn co svn://repos.gbar.dtu.dk/jcan/regbot/qtgui .
| |
|
| |
|
| ==Install software==
| | [[Regbot maintenance]] for longer life. |
|
| |
|
| Get the regbot.exe from the course homepage, place it in a directory, this directory will be default for configuration file and result files from the robot.
| | [[Regbot GUI]] installation. |
|
| |
|
| A driver must be installed to get in contact with the robot - see [[installation in windows]]
| | [[Regbot hardware board]]. |
|
| |
|
| The driver will create a com-port when connected - most likely com3 or any higher number.
| | == Install notes == |
| When the robot is disconnected by unplugging the cable, then the client needs to be restarted if it was connected when the cable was unplugged (no connection detect in windows).
| |
|
| |
|
| * [[Software installation]] and tool-chain - Linux
| | This section is primarily installation notes and more detailed descriptions not usually needed by the end-user. |
| * [[installation in windows]] some of the tool-chain
| |
| * [[Schematic]]
| |
|
| |
|
| | [[Regbot command interface]] - command list. |
|
| |
|
| ==User interface==
| | [[Software installation]] on REGBOT (Arduino) and tool-chain - Linux |
|
| |
|
| The user interface can configure and run the robot, as well as inspecting almost all values on the robot. Written in python using Qt GUI library.
| | [[Regbot old stuff]] |
| | |
| [[File:Gui_rev0.png]] | |
| | |
| The GUI allows to make step responses for velocity and turn. The step response is recorded in a buffer on the robot and is fetched in a MATLAB style file (as shown).
| |
| Interface points that are recorded can be switched on and off to better utilize the limited buffer size on the robot (35kBytes).
| |
| | |
| [[File:Gui_ctrl_rev_1.png]]
| |
| | |
| This is a page to make a step response and insert controller values for velocity control. The same controller is used for both wheels.
| |
| | |
| ==Design overview hardware==
| |
| | |
| [[File:blockdiagram_rev2.png]]
| |
| | |
| Hardware blockdiagram.
| |
| Most blocks are off-the-shelf hardware modules from PJRC (Teensy), Pololu (motor, driver and buck-boost converter) and Sparkfun (IMU).
| |
| | |
| A line sensor is planned, but not implemented yet.
| |
| | |
| ==Design overview software==
| |
| | |
| [[File:blockdiagram_software.png|900px]]
| |
| | |
| Overview of software data flow. Yellow is control blocks.
| |
| Green is hardware (motor and sensor), Light green is calculations. Light blue is obtained values.
| |
| Gray is input values.
| |
| | |
| Sample time for all controllers and data values are 1ms.
| |
| All software is written in c++, based on Arduino libraries.
| |
| | |
| | |
| * [[Design calculations]]
| |
| | |
| ==PCB connections revision 2B==
| |
| | |
| Component placement and values (in red) are shown here.
| |
| Plug connections are shown in blue.
| |
| | |
| [[File:component-drawing.png]]
| |
| | |
| The Sharp IR sensor output is not connected to an AD converter input.
| |
| | |
| The IR sensor voltage divider output should be between 0 and 1.2V,
| |
| and could be connected to A8 and A9 (used to be feedback from motor-controller).
| |
| Unfortunately a plug can not be mounted (space conflict with USB plug).
| |
| | |
| The orange wire is a patch (line sensor low power).
| |
| | |
| ==Install hardware - version 2A==
| |
| | |
| The motor and IMU wires are mounted as shown here.
| |
| The IMU uses 4 wires only, so only the rightmost pins (1..4) on the main board are used.
| |
| | |
| [[File:motor-imu-wire.png]]
| |
| | |
| Pin 1 on the IMU is as shown here
| |
| | |
| [[File:imu-wire.png]]
| |
| | |
| The teensy processor and power is connected as shown
| |
| | |
| [[File:teensy-annotated.png]]
| |