Difference between revisions of "RoboCup: Redesign 2014-2015"

From RoboJackets Wiki
Jump to navigation Jump to search
Line 66: Line 66:
 
*[https://redmine.robojackets.org/issues/463 Determine optimal secondary frequency] for base station updates
 
*[https://redmine.robojackets.org/issues/463 Determine optimal secondary frequency] for base station updates
 
*Test methods using breakout boards and compare data rates
 
*Test methods using breakout boards and compare data rates
*Successfully communicate using two (2) [https://www.nordicsemi.com/eng/Products/2.4GHz-RF/nRF24L01P nRF24L01+] transceivers and two (2) mbeds
+
*Successfully communicate using two (2) [https://www.nordicsemi.com/eng/Products/2.4GHz-RF/nRF24L01P nRF24L01+] transceivers and two (2) [http://developer.mbed.org/platforms/mbed-LPC1768/ mbeds]
 
*Research and determine best steps for structuring radio protocol with ''primary ''and ''seconday ''frequencies
 
*Research and determine best steps for structuring radio protocol with ''primary ''and ''seconday ''frequencies
 
*Research integration options of the [http://www.ti.com/product/CC1111F32?keyMatch=cc1111&tisearch=Search-EN CC1111 ]and [https://www.nordicsemi.com/eng/Products/2.4GHz-RF/nRF24LU1P nRF24LU1+]
 
*Research integration options of the [http://www.ti.com/product/CC1111F32?keyMatch=cc1111&tisearch=Search-EN CC1111 ]and [https://www.nordicsemi.com/eng/Products/2.4GHz-RF/nRF24LU1P nRF24LU1+]
 +
*Test packet optimizations - [http://koti.kapsi.fi/jpa/nanopb/ Nanopb ]is promosing for this
  
 
==== Completed ====
 
==== Completed ====
  
 
*Ordered 5 [http://www.ti.com/product/CC1111F32?keyMatch=cc1111&tisearch=Search-EN CC1111] transceivers as samples from [http://www.ti.com/ TI]
 
*Ordered 5 [http://www.ti.com/product/CC1111F32?keyMatch=cc1111&tisearch=Search-EN CC1111] transceivers as samples from [http://www.ti.com/ TI]
*Successfully communicate using two (2) [http://www.ti.com/product/cc1101?keyMatch=cc1101&tisearch=Search-EN CC1101 ]transceivers and two (2) mbeds
+
*Successfully communicate using two (2) [http://www.ti.com/product/cc1101?keyMatch=cc1101&tisearch=Search-EN CC1101 ]transceivers and two (2) [http://developer.mbed.org/platforms/mbed-LPC1768/ mbeds]
 
*Obtain breakout boards for [http://www.ti.com/product/cc1101?keyMatch=cc1101&tisearch=Search-EN CC1101]
 
*Obtain breakout boards for [http://www.ti.com/product/cc1101?keyMatch=cc1101&tisearch=Search-EN CC1101]
 
*Obtain breakout boards for [https://www.nordicsemi.com/eng/Products/2.4GHz-RF/nRF24L01P nRF24L01+]
 
*Obtain breakout boards for [https://www.nordicsemi.com/eng/Products/2.4GHz-RF/nRF24L01P nRF24L01+]

Revision as of 21:27, 15 December 2014

Phase I: Techanical Analysis

The first stage of the 2014-2015 RoboCup redesign involves brainstorming potential upgrades by researching new technologies/resources since the last revision. A parallel analysis of current robot bugs and potential enhancements is also done at this time. Outlined below is a listing of resources that the team used in this brainstorming stage.

Competition 2014 documentation

Team Description Papers (TDP)

Electrical Board Error Logs

Past Electrical Designs

Phase II: Design

During the design phase, specifications are determined for each section of the robot. Experimental results are documented here from all quantitative findings. This phase is also where the high-level ideas from Phase I are tracked to ensure completion.

Logical Controlling Unit


mbed Debugging

To Do

  • Successfully communicate over SPI with a current FPGA and mbed

Completed

Mechanical/Electrical Integration


Max PCB Dimensions

To Do

  • Determine location and placement for dribbler motor header
  • Determine optimal placement direction for drive motor's phase connections (motor board)
  • Add connection header for ball sensor to control board
  • Add wires among connections in CAD assembly files
  • Test motor wire modifications before working on the entire batch of motors
  • Determine kicker connections and integration

Completed

  • Update hall connection header to right angled one
  • Add pin locations to all connection housings in CAD part files
  • Update the 14-pin connection header (female) for the control-to-motor board connection
  • Finalize method for adjusting motor wire lengths when motors arrive
  • Determine placement of battery location

Radio


CC1101 C++ library

nRF24L01+ C++ library

Current protocol [LINK TO BE CREATED & UPDATED]

To Do

  • Determine optimal secondary frequency for base station updates
  • Test methods using breakout boards and compare data rates
  • Successfully communicate using two (2) nRF24L01+ transceivers and two (2) mbeds
  • Research and determine best steps for structuring radio protocol with primary and seconday frequencies
  • Research integration options of the CC1111 and nRF24LU1+
  • Test packet optimizations - Nanopb is promosing for this

Completed

  • Ordered 5 CC1111 transceivers as samples from TI
  • Successfully communicate using two (2) CC1101 transceivers and two (2) mbeds
  • Obtain breakout boards for CC1101
  • Obtain breakout boards for nRF24L01+

FPGA


A few major change to the FPGA's Verilog code must be made for the 2015 redesign. This means documentation mean be produced/located for how the FPGA currently communicates on the SPI bus and append documentation for new protocol.

The Xilinx program for FPGA development (this is on ECE's virtual lab pool computers - can connect to it from anywhere): http://www.xilinx.com/products/design-tools/ise-design-suite/ise-webpack.html

Command Read/Write Definition
0x00 Read Only Receive Data Readings
0x01 Write Set motor speeds


Array Index Bit(s) Definition
0 7..0 FPGA Version (0x04 in 2014)
1 7..0 Encoder 1 Count (LSB)
2 7..0
Encoder 1 Count (MSB)
3 7..0
Encoder 2 Count (LSB)
4 7..0
Encoder 2 Count (MSB)
5 7..0
Encoder 3 Count (LSB)
6 7..0
Encoder 3 Count (MSB)
7 7..0
Encoder 4 Count (LSB)
8 7..0
Encoder 4 Count (MSB)
9 7..0
Motor Fault
10 7..0
Kicker Status
11 7..0
Kicker Voltage
12 7..0
Hall Count 1
13 7..0
Hall Count 2
14 7..0
Hall Count 3
15 7..0 Hall Count 4
16 7..0
Hall Count 5


Array Index Bit(s) Definition
0 7..0 Packet Type (0x01)
1 7..0 Motor 1 Speed (LSB)
2 7..4

Reserved (Always 0)

3..2 Motor 1 Drive Mode
1..0 Motor 1 Speed (MSB)
3 7..0 Motor 2 Speed (LSB)
4 7..4 Reserved (Always 0)
3..2 Motor 2 Drive Mode
1..0 Motor 2 Speed (MSB)
5 7..0 Motor 3 Speed (LSB)
6 7..4 Reserved (Always 0)
3..2 Motor 3 Drive Mode
1..0 Motor 3 Speed (MSB)
7 7..0 Motor 4 Speed (LSB)
8 7..4 Reserved (Always 0)
3..2 Motor 4 Drive Mode
0..1 Motor 4 Speed (MSB)
9 7..0 Dribbler Motor Speed (LSB)
10 7 Kicker Charge
6 Chipper Enable (1=Chip, 0=Kick)
5..4 Reserved (Always 0)
3..2 Dribbler Motor Drive Mode
1..0 Dribbler Motor Speed (MSB)
11 7..0 style="text-

To Do

  • Transition the I2C bus lines to the microcontroller
  • Update Verilog for new balanced encoder signals (A+, A-, B+, B-)
    • ( (A+) + (A-) == 0 ) should be true for no errors
  • Update Verilog for driving a bootstrap circuit

Completed

  • Determine what communications occur over the SPI bus
  • Finalized that the 2015 motor will use the current FPGA

Motors


Maxon 50W Custom Motor Drawing

Maxon 50W Motor Datasheet

To Do

Completed

  • Ordered 3 DRV8301 Pre-Drivers from TI
  • Finalized the protyping designs of single motor controllers
  • Ordered motors

Motion Sensing


To Do

  • Integrate the MPU-9250 into the I2C data bus lines from the mbed

Completed

Error Detection & Indication


To Do

  • Determine best solution for controlling the WS2812B RGB LED

Completed

Kicker Board


To Do

  • Measure the current from kicker boards currently used
  • Update the kicker board to accommodate the new battery's voltage of 18.5V

Completed

Battery & Power


The following contains a listing of batteries that were considered for the 2015 design along with other battery/power adapters and accessories.

To Do

Completed

Battery

Zippy Flightmax 2200mAh 5S 40C

Connector

XT60 (Male)

XT60 12AWG 10cm

Charging Lead

XT60 Banana Plug

Balancing Board

Charge/Balance Board

All Batteries

Zippy Flightmax 2500mAh 5S 20C

Zippy Flightmax 1800mAh 5S 40C

Zippy Compact 2450mAh 5S 35C

Turnig 2200mAh 5S 30C

Thunder Power 2000mAh 5S 16C

Phase III: Production

The final phase for creating the new fleet of robots involves outlining the steps and procedures for robot manufacturing and assebly. Future members can use this area as a reference for the fleet's required maintenance. It may also be benefitial for strengthening tolerances in future fleet builds.

Electronics Assembly


https://learn.sparkfun.com/tutorials/electronics-assembly

http://www.soldermask.com/ <- Sparfun uses these guys for all their solder stencils