Difference between revisions of "Building the Mower"

From Open Mower Wiki
Jump to navigation Jump to search
m
 
(11 intermediate revisions by 2 users not shown)
Line 37: Line 37:
- [https://octopart.com/bom-tool/p1aqUopq RP2040 ''without'' CAN]
- [https://octopart.com/bom-tool/p1aqUopq RP2040 ''without'' CAN]


- [https://octopart.com/bom-tool/tZ27Fd1N RP2040 ''with'' CAN]
- [https://octopart.com/bom-tool/tZ27Fd1N RP2040 ''with'' CAN] ''(CAN is not required)''


- [https://octopart.com/bom-tool/hUY6qiSp STM32]  
- [https://octopart.com/bom-tool/hUY6qiSp STM32]  
|  WIP
|  WIP
|-
|-
| Raspebrry Pi 4 || The brain of the robot. Also used to send RTK correction data from the base station.
| Raspebrry Pi 4 || The brain of the robot.  




For the base station the Raspberry Pi can be any model with Ethernet and USB, for the robot we need the Raspberry Pi 4 with at least 4 GB of RAM.
With at least 2 GB of RAM to run the OpenMower software
| || Off the shelf || 2 || https://rpilocator.com/?cat=PI4&instock<nowiki/>|| WIP
 
[[System_Image#Installing_OpenMower_Software|A 4GB is recommend to compile the software, see notes here]]
| || Off the shelf||1||https://rpilocator.com/?cat=PI4&instock<nowiki/>||WIP
|-
|-
| Ardusimple RTK2B GPS || Positioning system for the bot  
|Ardusimple RTK2B GPS||Positioning system for the bot
| || Off the shelf || 2 || https://www.ardusimple.com/product/simplertk2b-basic-starter-kit-ip65/ || https://www.ardusimple.com/product/simplertk2b-basic-starter-kit-ip65/
| ||Off the shelf||1|| https://www.ardusimple.com/product/simplertk2b-basic-starter-kit-ip65/<nowiki/>||https://www.ardusimple.com/product/simplertk2b-basic-starter-kit-ip65/
|-
|-
| Raspberry Pi Pico|| Microcontroller talking to peripherals, soldered to the OpenMower mainboard
|Raspberry Pi Pico||Microcontroller talking to peripherals, soldered to the OpenMower mainboard
| ||Off the shelf||1||Widely available||
| ||Off the shelf|| 1|| Widely available||
|-
|-
|MPU 9250
|MPU 9250 (hard to get, end of life) or WT901
|9-axis accelerometer sitting on Mainboard allowing for direction through compass and dead reckoning of movement between GPS updates.
|9-axis accelerometer sitting on Mainboard allowing for direction through compass and dead reckoning of movement between GPS updates.  
|
|
|Off the shelf
| Off the shelf
|1
|1
|You may need to shop around, corresponds to this one
|NO LINKS ANYMORE, since most of the delivered modules are fakes.
[https://www.amazon.de/dp/B07Y7VGWX5/ Amazon (Fast shipping)]
Alternative would be the WT901:  
|[https://www.aliexpress.com/item/1005003056348525.html?spm=a2g0o.cart.0.0.37ef3c00YO7lgM&mp=1 https://aliexpress.com/item/1005003056348525.html]
[https://www.aliexpress.com/item/32787237588.html?spm=a2g0o.cart.0.0.37ef3c00YO7lgM&mp=1 https://aliexpress.com/item/32787237588.html]


[https://de.aliexpress.com/item/1005003718272772.html https://aliexpress.com/item/1005003718272772.html]
https://amzn.to/3PQsV6O
 
|
https://www.ebay.de/itm/181877281002
|-
|-
|3D printed brackets||To hold the GPS inside the bot
| 3D printed brackets||To hold the GPS inside the bot
| ||Custom||1||https://www.printables.com/fr/model/175826-openmower-gps-mount-for-yardforce-classic-500<nowiki/>||WIP
| ||Custom||1||https://www.printables.com/fr/model/175826-openmower-gps-mount-for-yardforce-classic-500<nowiki/>||WIP
|-
|-
Line 78: Line 77:
|https://amzn.to/3K913b1
|https://amzn.to/3K913b1
|WIP
|WIP
|-
|GPS PCB
|A ground plane PCB to improve GPS reception
|
| Custom
|1
|WIP
|WIP
|-
|USB Angle Adapter
|If you want to use the Classic 500's USB port
|YES
|Off the shelf
|1
|https://amzn.to/3ukNAIj
| WIP
|-
! colspan="7" | Docking Station
|-
|-
|CC/CV Step Down module
|CC/CV Step Down module
| As charger for the docking station
|As charger for the docking station
|
|
|Off the shelf
|Off the shelf
|1
|1
|https://amzn.to/3NUdRVL
|https://amzn.to/3NUdRVL
|WIP
| WIP
|-
|-
|Docking Station Adapter PCB
|Docking Station Adapter PCB
Line 92: Line 109:
|Custom
|Custom
|1
|1
| WIP
|WIP
|WIP
|WIP
|-
|-
|GPS PCB
|Raspebrry Pi
| A ground plane PCB to improve GPS reception
''(required if NTRIP is not available)''
|Used to send RTK correction data from the base station.
 
''Can be any model with Ethernet and USB''
|
|
|Custom
|Off the shelf
|1
|1
|WIP
|https://rpilocator.com/?cat=PI4&instock<nowiki/>
|WIP
|WIP
|-
|-
|USB Angle Adapter
|Ardusimple RTK2B GPS
|If you want to use the Classic 500's USB port
''(required if NTRIP is not available)''
|YES
|Positioning system for the docking station
|
|Off the shelf
|Off the shelf
|1
|1
|https://amzn.to/3ukNAIj
|https://www.ardusimple.com/product/simplertk2b-basic-starter-kit-ip65/
|WIP
|https://www.ardusimple.com/product/simplertk2b-basic-starter-kit-ip65/
|}
|}


==Building the bot==
==Building the bot ==


Once you have gathered up all of the parts, components, tools, and have a set of PCB's, it's time to start building the OpenMower Robot.  
Once you have gathered up all of the parts, components, tools, and have a set of PCB's, it's time to start building the OpenMower Robot.  
Line 118: Line 139:
First thing first, watch all of Clemen's Youtube video's, and then watch them again. They contain a Treasure Trove of information and should be used as a reference. https://youtu.be/_bImqD-pQSA
First thing first, watch all of Clemen's Youtube video's, and then watch them again. They contain a Treasure Trove of information and should be used as a reference. https://youtu.be/_bImqD-pQSA


Get Organized: Before you start assembling and soldering the PCB's, it's recommended to organize all of your parts. One method is to print off the iBOM.html file, tape it to a piece of cardboard, and then put double sided tape next to each line item. Only take out the parts/components you need for (1) xESC at a time, or the parts for the Mainboard, then place them on the double sided tape. Here are a couple of examples:
Get Organized: Before you start assembling and soldering the PCB's, it's recommended to organize all of your parts. One method is to print off the iBOM.html file, tape it to a piece of cardboard, and then put double sided tape next to each line item. Only take out the parts/components you need for (1) xESC at a time, or the parts for the Mainboard, then place them on the double sided tape. Here are a couple of examples:<gallery>
[[File:XESC-Parts-on-iBOM-wiki.jpg|thumb|Organize xESC components.]]
File:MainBoard-Parts-on-iBOM-wiki.jpg
[[File:MainBoard-Parts-on-iBOM-wiki.jpg|left|thumb|Organize MainBoard components.]]
File:XESC-Parts-on-iBOM-wiki.jpg
 
</gallery>
 
 
 
 
 
 
 
 
 
 
Now you want to apply solder paste to your PCB, BUT, before you apply solder paste to your PCB's with a stencil, make sure to wipe down both the PCB and the stencil with isopropanol alcohol to clean the surface, this helps more than you would think. Once the IPA has evaporated, align your stencil on top of the PCB, and use masking tape or painters tape on one side to act as a hinge, so after you apply the solder paste, you can carefully remove the stencil. Please reference Clemen's Youtube video for soldering:  https://youtu.be/Y16kbAK3vaU
Now you want to apply solder paste to your PCB, BUT, before you apply solder paste to your PCB's with a stencil, make sure to wipe down both the PCB and the stencil with isopropanol alcohol to clean the surface, this helps more than you would think. Once the IPA has evaporated, align your stencil on top of the PCB, and use masking tape or painters tape on one side to act as a hinge, so after you apply the solder paste, you can carefully remove the stencil. Please reference Clemen's Youtube video for soldering:  https://youtu.be/Y16kbAK3vaU


Here is an example photo of a PCB after applying the solder paste:
Here is an example photo of a PCB after applying the solder paste:<gallery>
[[File:SolderPaste-Example.jpg|left|thumb|Solder paste example.]]
File:SolderPaste-Example.jpg
 
</gallery>
 
Make sure to inspect your entire PCB and the alignment of all components before soldering with a hot-plate / oven / hot-air. See the photo below for an example of all xESC (STM32 version) components placed on the top side of the PCB, being inspected before soldering.<gallery>
 
File:Solder Paste Inspection.jpg
 
</gallery>Here is a photo showing top and bottom of (3) completed xESC boards. (STM32 version)<gallery>
 
File:3-xESCs-complete STM32-Version.jpg
 
</gallery>
 
Here is a collection of photos of the OpenMower MainBoard from various Discord Users: (c.ez, vamatis, bhammy187)<gallery>
 
File:Test-5V-on-MainBoard.jpg
 
File:Vamatis-mainboard-diode-direction-wiki.jpg
 
File:Full-power-to-MainBoard.jpg
 
File:MB-R11 R12-wiki.jpg
 
</gallery>
And here is a video inspecting the PCB after placing the components onto the solder paste / PCB with tweezers:
 


==Setup and test==
==Setup and test==

Latest revision as of 22:36, 16 August 2022

Welcome to the OpenMower Building guide!

Note: This WIKI was only just started on 2022-04-22, but are actively working on filling it up and making a good documentation for the new builders out there!

Warning

Please note that this project currently is in a very early stage! So don't go buying stuff right away! You will need to order and solder your own boards, since there are no assembled boards for sale yet.

Please make sure that you're actually allowed to build this device in your area. There may be laws / patents prohibiting you of doing so!

Please just be responsible and if you're not sure what you're doing, please don't do anything.

BTW the warranty of your brand new mower will obviously be void as soon as you modify it in any way, so be aware.

Intro

Below you can find an overview of the major parts and components in the OpenMower.

There is a also another page with a Builder Road Map that gives guide to how to go about building your own OpenMower project.

Bill OF Materials

Open Mower Bill of Materials
Name Description Optional Availability Quantity Required Source Link 1 Alternate Source
Mower (Yardforce Classic 500) Base building block Off the shelf 1 https://amzn.to/3NWgIxk Note: Earlier, we had a reference to myrobotcenter. However, they have gone into reconstruction, so be aware of that vendor!
OpenMower Mainboard The core of the new electronics. Custom 1 Components Octopart BOM WIP
xESC Motor drivers Custom 3 Components Octoparts BOM:

- RP2040 without CAN

- RP2040 with CAN (CAN is not required)

- STM32

WIP
Raspebrry Pi 4 The brain of the robot.


With at least 2 GB of RAM to run the OpenMower software

A 4GB is recommend to compile the software, see notes here

Off the shelf 1 https://rpilocator.com/?cat=PI4&instock WIP
Ardusimple RTK2B GPS Positioning system for the bot Off the shelf 1 https://www.ardusimple.com/product/simplertk2b-basic-starter-kit-ip65/ https://www.ardusimple.com/product/simplertk2b-basic-starter-kit-ip65/
Raspberry Pi Pico Microcontroller talking to peripherals, soldered to the OpenMower mainboard Off the shelf 1 Widely available
MPU 9250 (hard to get, end of life) or WT901 9-axis accelerometer sitting on Mainboard allowing for direction through compass and dead reckoning of movement between GPS updates. Off the shelf 1 NO LINKS ANYMORE, since most of the delivered modules are fakes.

Alternative would be the WT901:

https://amzn.to/3PQsV6O

3D printed brackets To hold the GPS inside the bot Custom 1 https://www.printables.com/fr/model/175826-openmower-gps-mount-for-yardforce-classic-500 WIP
SMA Angle Adapter Needed to connect the GPS without bending the wire too much Off the shelf 1 https://amzn.to/3K913b1 WIP
GPS PCB A ground plane PCB to improve GPS reception Custom 1 WIP WIP
USB Angle Adapter If you want to use the Classic 500's USB port YES Off the shelf 1 https://amzn.to/3ukNAIj WIP
Docking Station
CC/CV Step Down module As charger for the docking station Off the shelf 1 https://amzn.to/3NUdRVL WIP
Docking Station Adapter PCB A PCB to hold the module in place. Custom 1 WIP WIP
Raspebrry Pi

(required if NTRIP is not available)

Used to send RTK correction data from the base station.

Can be any model with Ethernet and USB

Off the shelf 1 https://rpilocator.com/?cat=PI4&instock WIP
Ardusimple RTK2B GPS

(required if NTRIP is not available)

Positioning system for the docking station Off the shelf 1 https://www.ardusimple.com/product/simplertk2b-basic-starter-kit-ip65/ https://www.ardusimple.com/product/simplertk2b-basic-starter-kit-ip65/

Building the bot

Once you have gathered up all of the parts, components, tools, and have a set of PCB's, it's time to start building the OpenMower Robot.

First thing first, watch all of Clemen's Youtube video's, and then watch them again. They contain a Treasure Trove of information and should be used as a reference. https://youtu.be/_bImqD-pQSA

Get Organized: Before you start assembling and soldering the PCB's, it's recommended to organize all of your parts. One method is to print off the iBOM.html file, tape it to a piece of cardboard, and then put double sided tape next to each line item. Only take out the parts/components you need for (1) xESC at a time, or the parts for the Mainboard, then place them on the double sided tape. Here are a couple of examples:

Now you want to apply solder paste to your PCB, BUT, before you apply solder paste to your PCB's with a stencil, make sure to wipe down both the PCB and the stencil with isopropanol alcohol to clean the surface, this helps more than you would think. Once the IPA has evaporated, align your stencil on top of the PCB, and use masking tape or painters tape on one side to act as a hinge, so after you apply the solder paste, you can carefully remove the stencil. Please reference Clemen's Youtube video for soldering: https://youtu.be/Y16kbAK3vaU

Here is an example photo of a PCB after applying the solder paste:

Make sure to inspect your entire PCB and the alignment of all components before soldering with a hot-plate / oven / hot-air. See the photo below for an example of all xESC (STM32 version) components placed on the top side of the PCB, being inspected before soldering.

Here is a photo showing top and bottom of (3) completed xESC boards. (STM32 version)

Here is a collection of photos of the OpenMower MainBoard from various Discord Users: (c.ez, vamatis, bhammy187)

Setup and test