Subsystems designed by Aric Donerkiel

Handheld Controller​
​
​
​
​
​
Subsystems
Xbee Networking:
This subsystem was designed initially to incorporate the following system components: One handheld controller, One relay anchor, and Two yard cleaning robots.
​
This was changed to only needing to use two robots and the handheld controller. The decision came after testing showed the Xbees weren't accurately able to send RSSI distance information. ​
​
This subsystem used a total of 3 Xbees one on each robot and one on the controller. They were used in "Transparent Mode" this allowed for the data coming in to immediately transmit to the designated node.
In transparent mode the connection had to be established and configured to stay open allowing to communicate with both robots simultaneously. Two different style modules were used, U.FL Xbees and the pro models.
​
They were connected to all the devices by using add on boards that utilized the Dout, Din, Gnd, and Vin pins. These could have been used in API mode if there had been more time for the project.
Handheld Controller and Interface:
This is how the owner will be able to interact with the robots by sending a series of different commands (Start, Pause, Reset, % Complete, Radius, and Calibrate).
​
-
"Start" - Sends the command to the robots to start cleaning
-
"Pause" - Sends the command to the robots to pause the robot
-
"Reset" - Sends the command to the robots to reset the cleaning
-
"Comp" - Sends the command to get % complete
-
"Rad" - Sends the new radius set by the user
-
"Calibrate" - Sends the command to calibrate the compass
​
The connection is established by accessing command mode to establish the destination node.
Power - this uses a rechargeable battery instead of standard AA batteries since it is more cost affective and its rechargeable causing less pollution.
XCTU
This is the software provided by DIGI the manufacturer of the Xbees, this is where you can configure the modules.
Xbees First Communication
This is demonstrating the first communication using serial communication with two nodes and a computer.

Testing All Three Nodes
​
Final Menu Layout
A short clip scrolling thu the final menu and the screens that come after selection.
Code to Connect to Other Nodes
This code uses the millis(); function instead of delays. GT (300ms) is the guard time for the xbees, guard time is the amount of time the needs to pass with nothing happening before sending the command "+++" then the same amount of time has to pass after. Upon completion the xbee is in command mode at this point use AT commands, the command used was ( ATDN) DN - destination node. Then the enter command (0xd) is sent through and the line of communication is opened. The code here is using the code to connect to the node "RB1". This code was being run at a baud rate of 9600.
​
​
​
​
​
​
First Test w/ robots & initial controller
This test was a rough test and the communication had many bugs.
Controller on battery power
The battery used was a "Jackery" 3250 mah portable phone charger using a usb connection