, , ,

Last year I became an educator member through Civil Air Patrol (CAP).  Last June, I lead a civil air patrol lesson on the weather, the atmosphere, the climate, and weather forecasting.  I wrote up a list of resources for this here.   In October my Civil Air Patrol educational materials were the Hydraulic Engineering STEM Kit. I wrote up a list of resources for this here.  In January me educational materials were on Astronomy and telescopes.  I wrote up a list of resources for this here This time my educational materials are centered around the Raspberry Pi.  This is a brand new module for CAP and does not have the extensive support that other modules have.  In fact, the guide is still in development. It doesn’t have all of the units complete yet. However, I found other resources and what is in the guide is enough to get started.

The following are a list of terms that came from the Civil Air Patrol’s “Computing with the Raspberry Pi: An Introduction to Programming, Embedded Systems, and Digital Sensors” downloadable guide:

ADC – Analog to Digital Converter (ADC) is a microchip used to convert analog signal to digital signal.

Arithmetic – Arithmetic is the math operators that within  Python’s basic math such as addition +, subtraction -, multiplication *, division /, floor division //, or exponent **.

Basic program loops – A basic program loop is used when a programmer needs a computer to continue to perform the same tasks for a long period of time or for as long as it has power.

Binary – Binary is a computer or machine language that uses the binary digits 0 and 1 to represent a letter, digit, or another character in a computer or other electronic device.

Breakout Board – A breakout board is a device that converts small terminals into larger terminals that make it easier to wire electrical components.  You can connect alligator clips or solder to them.

Capacitor Burn Out – A capacitor can burn out when connected backward and will typically make a popping sound.  

Circuit – A circuit is the “path” we create guiding power flow between the hardware (sensors, LEDs, etc.) that we are using with our raspberry pi GPIO pins.

Cobbler – A cobbler can be used to connect a breadboard to the Raspberry Pi’s GPIO pins.  This component is used to make the GPIO ports easier to use.

Components – Components are the various parts or pieces that we connect to our Raspberry Pi (i.e., sensors, LED, camera, etc.)

Conditional operators – Conditional operators are used in programming just like in English.  Sometimes we need to tell Python to do something only if something else is the case.  We can do that using an “if” statement.

Coordinate System – A coordinate system is a set of 2 numbers that indicate positions on Earth relative to the Equator.  Latitude indicates vertical position and longitude indicates horizontal position. An x-y axis is another type of coordinate system.  And for 3D an x-y-z-axis system is another type of coordinate system.

Current – Current is the electricity flowing from a power source to the Raspberry Pi. Current is measured in Amps.

Electrolytic Capacitor – A capacitor is an electronic device used to store energy.  If a consistent voltage is applied to a capacitor, it has a very high resistance, but if the voltage is suddenly removed, it will provide power to the circuit for a short time.  If the voltage is increased, the capacitor will resist the flow while it is charging up.

For Loops – A for loop is a finite loop and will loop a fixed number of times.

Function – Function is a type of programming feature that will allow us to have only one set of code.  A function has three components: input, output, and body. The input is what you give the function to work with.  The output is what the function generates from its inputs. The body is what gets us from the input to the output.

GPIO – General Purpose Input/Output. GPIO pins are used for connecting LEDs, sensors, and different devices. There are 40 GPIO pins on the Raspberry Pi 3.  

GPS – Global Positioning System (GPS) uses an antenna to connect to satellites in orbit around the earth.  From these satellites, the module can find out its positional data on the Earth and the current time.

Ground – This is where a circuit ends.  It can either be a pin waiting for input or a return path for power.

Heading – This is the direction you are facing or the direction towards a particular location.

IDE – Interactive Development Environment (IDE) is when the shell opens so you can enter your python code.

IDLE – IDLE is the development environment for Python.  You can create and test programs using it.
Input – Input devices let you send data to the raspberry pi like a keyboard, mouse, or camera.  On the raspberry pi, inputs can be the USB connectors or the GPIO pins.

LCD – A Liquid Crystal Display (LCD) are like those used in many modern monitors and HD televisions.  There are tiny LCD screens available to use with the raspberry pi.

LED – A Light Emitting Diode (LED) can light up in one color (available in many different colors).  The longer lead is positive, while the shorter lead is negative.

List – A list is a data structure variable that can hold multiple values.  These values can be referenced by numbers like numbered items in a grocery list.

Operating System – This is required for your computer to start up. The raspberry pi runs on Linux.

Output – Output devices receive data that the Raspberry Pi sends to them like a speaker or display.

PiTFT touchscreen – The PiTFT (Thin Film Transistor) touchscreen is a device designed to both display something and read when touched as input.  This specific one with our kit is a single-touch, resistive touchscreen. This means that it only supports a single point being touched at a time.

Power Source – A power source is the typical starting point of a circuit such as the power supply.

Python – Python is a simple programming language that requires only a few lines of code to do amazing things.  Any code you write will be fed to an interpreter that converts your python code into the computer’s binary language.  Python is the command prompt that Raspberry Pi uses.

Resistance – Resistance is measured in Ohms and is how hard the components on the board push back against the voltage. Resistance is like the size of a stream.  A stream that is running through a deep section with wide banks has low resistance and moves slowly; a stream that is running through a shallow water with narrow banks has high resistance and moves quickly.

Shell – The window that opens is known as the shell and is where you can enter the python code.

Short Circuits – A short occurs when a component with a positive polarity is directly connected to a component with a negative polarity and both have very low resistance.  This can occur by setting the Raspberry Pi on a piece of metal or allowing two pins to touch. A short can destroy your Raspberry Pi.  Do not set your Raspberry Pi on metal and be careful to not touch the wrong pins together.

Source code – Source code is any collection of computer instructions, possibly with comments.  The raspberry pi uses python as its source code before being converted to binary.

Static Electricity – Static electricity is generating a shock when you touch a conductive surface such as metal or another person.  This kind of shock can easily damage the Raspberry Pi. You can use a grounding bracelet to protect against static shocks.

Storage – Storage is where the programs you create are saved to. Memory/RAM is temporary and gets cleared any time the machine is powered off or reset.  The storage for the raspberry pi is the microSD card or a hard drive if you need to backup your programs.

Troubleshooting – Troubleshooting is a form of problem-solving and in the case of the Raspberry Pi it is done to find errors or debug the code when errors occur.

Try-Except Block – A Try-Except Block is similar to an if-else statement, the code in the try section is run unless there is an error or interruption.  You can use the except block run code when the specific event happens during the try block.

Variables – Variables are one of the most useful tools in programming.  Variables allow you to tell the computer to remember something.  Variables can be integers, strings, or names.

Voltage – Voltage is the electrical potential between positive and negative. The Raspberry Pi has a 5-volt input but outputs 3.3 volts.

While Loops – While Loops are potentially infinite.  A while loop will repeat the indented lines of code until the condition is no longer true.

The following are links to online resources that I located or were suggested in the activity booklet (videos, lesson plans, ebooks, etc.) that can be used to better understand the raspberry pi:

  • Raspberry Pi is the official website of Raspberry Pi and where you can get your own and accessories.  In addition, it has tons of resources for online training, tutorials, project ideas, coding club locators, and educational resources.
  • Getting Started With Raspberry Pi is an online guide.
  • KA-Pi is Khan Academy for the Raspberry Pi and the ability to watch their videos without internet.
  • The Pi Hut is loaded with tutorials as well as links to the official Raspberry Pi and maker stores.
  • Sparkfun Pi is Sparkfun’s raspberry pi tutorials and online guides.
  • Adafruit Raspberry Pi is Adafruit’s raspberry tutorials and demos.
  • RPi is filled with raspberry pi tutorials and project ideas.
  • Instructables has Raspberry Pi project ideas.
  • Hackster.io has Raspberry Pi tutorials and demos.
  • PiMyLifeUp has lots of Raspberry Pi projects.
  • Python is the main programming language used on the Raspberry Pi.
  • Learn Python has a tutorial for learning python.
  • Python Guru has tutorials for learning python.

The following are books (all at our local library) about the raspberry pi:

  • Raspberry Pi Projects for Dummies by Mike Cook
  • Adventures in Raspberry Pi by Carrie Anne Philbin
  • Learning Python with Raspberry Pi by Alex Bradbury
  • Raspberry Pi in Easy Steps by Mike McGrath
  • Getting started with Raspberry Pi by Matt Richardson
  • Understanding coding with Raspberry Pi by Patricia Harris
  • Raspberry Pi Zero Cookbook by Edward Snajder
  • Python Programming with Raspberry Pi by Srihari Yamanoor
  • Raspberry Pi by Charles R. Severance
  • Make Bluetooth: Bluetooth LE Projects with Arduino, Raspberry Pi, and Smartphones by  Alasdair Allan
  • Motors for Makers: a Guide to Steppers, Servos, and Other Electrical Machines by Matthew Scarpino
  • The New Shop Class: Getting Started with 3D Printing, Arduino, and Wearable Tech by Joan C. Horvath

Here are some places to obtain Raspberry Pi kits or bundles for those who don’t want to acquire everything individually (the actual raspberry pi is about $35):

  • Adafruit has a starter kit; all you need is a screen or monitor or hook it up to your TV.
  • Adafruit PiTop is a complete raspberry pi laptop kit.
  • Piper Computer Kit is a complete build your own computer kit.
  • Neego Raspberry Kit is a build your own tablet kit.
  • Kano Computer Kit is a complete build your own computer kit.
  • Raspberry Pi is the official store with bundles but you will need to supply your own screen and keyboard.
  • Cana Kit has a build your own computer starter kit and you need to provide the screen.

Here are some magazines that can offer inspiration for making and creating with the raspberry pi and other technologies: