Localization Hardware
(→Software) |
(→Known errors) |
||
(19 intermediate revisions by one user not shown) | |||
Line 1: | Line 1: | ||
+ | [[File:Tag anchor.jpg|thumb|right|500px|A tag and an anchor]] | ||
+ | |||
This page describes the hardware design of the [[3D localization]] system. | This page describes the hardware design of the [[3D localization]] system. | ||
Line 34: | Line 36: | ||
===The Anchors=== | ===The Anchors=== | ||
+ | [[File:Anchor layout.png|450px|thumb|right|Anchor layout]] | ||
+ | The anchor schematic can be seen at [[Media:Anchor_sch.jpg|Anchor schematic]] <br /><br /> | ||
− | [ | + | The anchors can be programmed through either the USB (DFU), or the SWD link that has been broken out to ''J3''. The SWD protocol is an alternative to the full [https://en.wikipedia.org/wiki/JTAG JTAG], that only used 2 data wires for programming and debugging. See [[Arm compiler environment#OpenOCD Setup]] For more info on how to use SWD. |
+ | |||
+ | ====Known errors==== | ||
+ | The anchor hardware is ''still'' error free, meaning that there is yet to be found errors in the newest electronic design. | ||
+ | The only thing on the list of changes to come in the next revision is a better power control, courtesy of a switch-mode regulator and the ability to utilize the ultra-low power sleep mode of the DW1000 devices. This means that the DWM1000 modules would have to be powered directly from the battery, through its own 3.3v ''always-on'' regulator, with ''EXTON'' connected to the shutdown of the switch-mode. This would allow the anchors to be powered on and off wirelessly, while still maintaining an ultra low power consumption in ''standby mode''. | ||
+ | |||
+ | Furthermore it would be a very good idea to combine the bootloader jumper with the user switch, to get rid of both the hardware jumper and the bootloader switch software check. | ||
===The Tags=== | ===The Tags=== | ||
+ | [[File:Tag_layout.png|450px|thumb|right|Tag layout]] | ||
+ | |||
+ | The tag schematic can be seen at [[Media:Tag_sch.jpg|Tag schematic]] <br /><br /> | ||
+ | |||
+ | The tags can only be programmed through the SWD link that has been broken out to the ''U6'' connector. The SWD protocol is an alternative to the full [https://en.wikipedia.org/wiki/JTAG JTAG], that only used 2 data wires for programming and debugging. See [[Arm compiler environment#OpenOCD Setup]] For more info on how to use SWD. <br /> | ||
+ | |||
+ | The tags furthermore contain a high precision IMU (MPU9250), to allow for sensor fusion with the result of a better velocity estimate. For more info in the sensor fusion see [[3D localization#Sensor fusion]] | ||
− | + | ====Known errors==== | |
+ | The tags contains at least two known hardware errors, one is the missing load sharing in the charger design (see the anchors for the proper design), and the other known issue, is the '''regout''' pin being connected to 3.3v instead of bypassed to ground through 100 nF capacitor. As with the anchors, the next hardware revision of the tags should implement a proper power scheme, through a switch-mode regulator. The next revision will probably loose the battery charger entirely, as the system should be powered through the device you want to track (robot), and as such does not need a battery. | ||
==Software== | ==Software== | ||
− | All the PCB design is done in a software suite called DipTrace, which can be downloaded for free at [http://diptrace.com/ www.diptrace.com]. The software is currently only available in a Windows and Mac OS X version, but runs perfectly through | + | All the PCB design is done in a software suite called DipTrace, which can be downloaded for free at [http://diptrace.com/ www.diptrace.com]. The software is currently only available in a Windows and Mac OS X version, but runs perfectly through [https://en.wikipedia.org/wiki/Wine_(software) Wine]. DipTrace offers a free student license, allowing a larger design along with some extra features. This student license can be requested by writing an email to the contact address listed at their [http://diptrace.com/buy/academic/ academic] site. |
Latest revision as of 13:01, 13 June 2016
This page describes the hardware design of the 3D localization system.
The anchors and tags are made up of some main components as described in the table below. The main difference is that the anchors have 180° of the antenna shielded in order to allow mounting on walls and ceilings without changing the antenna properties from reflections, other than that the tags contains a high precision IMU for sensor fusion in order to improve the velocity estimates.
Anchors | Tag |
---|---|
a cortex-m0 processor from ST (STM32f072) | a cortex-m3 processor from ST (STM32f103) |
an UWB device (DWM1000) | an UWB device (DWM1000) |
a pressure sensor (LPS25H) | a pressure sensor (LPS25H) |
a 3.3v low noise LDO regulator (MIC5209) | a high precision IMU (MPU-9250) |
a single-cell LIPO charger (MCP73831) | a 3.3v low noise LDO regulator (MIC5209) |
a single-cell LIPO charger (MCP73831) |
Contents |
[edit] Connectivity
The system contains a number of potential ways to extract information. It is possible to connect to the anchors through a UART serial port, a virtual serial port on the USB port, or SWD via eg. openOCD (GDB). In the same way the tags can be reached through the UART port, a virtual serial port through the USB port, SWD or I2C. The next generation of the tags are supposed to SPI extracted from the uC as well for improved connectivity to eg. a robot.
[edit] The Anchors
The anchor schematic can be seen at Anchor schematic
The anchors can be programmed through either the USB (DFU), or the SWD link that has been broken out to J3. The SWD protocol is an alternative to the full JTAG, that only used 2 data wires for programming and debugging. See Arm compiler environment#OpenOCD Setup For more info on how to use SWD.
[edit] Known errors
The anchor hardware is still error free, meaning that there is yet to be found errors in the newest electronic design. The only thing on the list of changes to come in the next revision is a better power control, courtesy of a switch-mode regulator and the ability to utilize the ultra-low power sleep mode of the DW1000 devices. This means that the DWM1000 modules would have to be powered directly from the battery, through its own 3.3v always-on regulator, with EXTON connected to the shutdown of the switch-mode. This would allow the anchors to be powered on and off wirelessly, while still maintaining an ultra low power consumption in standby mode.
Furthermore it would be a very good idea to combine the bootloader jumper with the user switch, to get rid of both the hardware jumper and the bootloader switch software check.
[edit] The Tags
The tag schematic can be seen at Tag schematic
The tags can only be programmed through the SWD link that has been broken out to the U6 connector. The SWD protocol is an alternative to the full JTAG, that only used 2 data wires for programming and debugging. See Arm compiler environment#OpenOCD Setup For more info on how to use SWD.
The tags furthermore contain a high precision IMU (MPU9250), to allow for sensor fusion with the result of a better velocity estimate. For more info in the sensor fusion see 3D localization#Sensor fusion
[edit] Known errors
The tags contains at least two known hardware errors, one is the missing load sharing in the charger design (see the anchors for the proper design), and the other known issue, is the regout pin being connected to 3.3v instead of bypassed to ground through 100 nF capacitor. As with the anchors, the next hardware revision of the tags should implement a proper power scheme, through a switch-mode regulator. The next revision will probably loose the battery charger entirely, as the system should be powered through the device you want to track (robot), and as such does not need a battery.
[edit] Software
All the PCB design is done in a software suite called DipTrace, which can be downloaded for free at www.diptrace.com. The software is currently only available in a Windows and Mac OS X version, but runs perfectly through Wine. DipTrace offers a free student license, allowing a larger design along with some extra features. This student license can be requested by writing an email to the contact address listed at their academic site.