# Schematics and Building the Circuits

The image below shows the schematic for the Boe-Bot with the accelerometer circuit.  The servo and piezo speaker connections are from Robotics with the Boe-Bot (#28125).  The connections for the accelerometer are featured in Chapter 3 of Smart Sensors and Applications.

Figure 3 - Schematic for Boe-Bot with Accelerometer

# Tilt Axes on the Boe-Bot

It's important to get a feel for how the Boe-Bot's forward/backward and left/right tilt axes relate to the accelerometer's X and Y axes.

• Enter, save, and run BoeBotTiltTest.bs2, and keep an eye on the Debug Terminal as you tilt your Boe-Bot.
• Verify that the piezospeaker beeped for two seconds before the program continued.  If not, double-check your program and wiring.
• Try tilting your Boe-Bot to the left and right.  Verify that the x-axis values range from -625 to 625, and that they are negative when you tilt the Boe-Bot to the left and positive when you tilt it to the right.
• Next tilt the Boe-Bot as though it is driving downhill, then uphill.  Verify that the y-axis values range from -625 to 625, and that they are positive when the Boe-Bot is tilted downhill and negative when the Boe-Bot is tilted uphill.

### Example Program – Boe-BotTiltTest.bs2

```' BoeBotTiltTest.bs2

'{\$STAMP BS2}
'{\$PBASIC 2.5}

x              VAR     Word                  ' Left/right tilt
y              VAR     Word                  ' Forward/backward tilt

DEBUG "Beep!!!"                              ' Test piezospeaker
FREQOUT 4, 2000, 3000
DEBUG CLS, "  x     y", CR                   ' Axis headings

DO                                           ' Begin main routine

PULSIN 6, 1, x                             ' Get X-axis tilt
PULSIN 7, 1, y                             ' Get Y-axis tilt

' Instead of measurements that range from 1875 to 3125 with 2500 = no tilt,
' These two statements shift the tilt measurements to range from -625 to 625
' with 0 = no tilt.
x = (x MIN 1875 MAX 3125) - 2500
y = (y MIN 1875 MAX 3125) - 2500

' Display x and y tilt measurements.
DEBUG CRSRX, 0, "(", SDEC3 x, ", ", SDEC3 y, ")", CLREOL

PAUSE 100                                  ' Pause 1/10 s

LOOP                                         ' Repeat main routine
```