PI-SPI Developers Pack

PI-SPI Developers Pack

Regular price $97.95 Sale

The Pi-SPi Developers Pack includes 4 PI-SPI Modules, and all the necessary ribbon cables. Optional Items include a 24 VDC Power Supply and a fully programmed SD Card with the latest Widgetlords libwidgetlords libraries and Python sample code examples.

The PI-SPI Developers Pack:

Qty. 1 PI-SPI-8AI-8MA 4-20 mA Analog Input Module

Qty. 1 PI-SPI-2AO 4-20 mA Analog Output Module

Qty. 1 PI-SPI-8DI Digital Input Module

Qty. 1 PI-SPI-8KO Relay Output Module

Qty. 1 40x26 Ribbon Cable

Qty. 3 26x25 Ribbon Cables

NOTE: Raspberry Pi Not Included

Options:

-24PS Wall Mount 24 VDC Power Supply for input/output circuits

-SD 8GB SanDisk SD Card with RPi 3 "Stretch" and Widgetlords libwidgetlords libraries and sample code pre-installed

 -24PS-SD Both 24VDC Power Supply and SD Card

Basic Operation

Each of the PI-SPI modules can be connected individually to the RPi using the 40x26 Ribbon Cable. Each PI-SPI module can be "daisy-chained" from module to module using the 26x26 Ribbon Cables.

  • Each PI-SPI module relies on the 5VDC connection from the RPi for power (Local Power Indicator - Blue LED)
  • The input/output circuits of the modules rely on the external power supply, typically a 24VDC "Field" power supply (Filed Power Indicator - Blue LED)
  • The PI-SPI-8AI does not need the input power (24VDC) "Field" Power Supply if the input signals are sourced externally
  • Only one external power supply (24VDC) is required, each module can have the "Field" power "daisy-chained from module to module" as shown in the above picture

Please refer to each individual module for more information:


PI-SPI-8AI Analog Input 4-20 mA Interface

PI-SPI-2AO Analog Output 4-20 mA Interface

PI-SPI-8DI Digital Input Interface

PI-SPI-8KO Relay Output Interface

 

Basic Python Sample Code

Start by installing the Widgetlords libwidgetlords libraries as outlined in:

Getting Started with PI-SPI Libaries

(Unless the SD card has been purchased. It is still a good idea to familiarize oneself with the installation procedure)

The following Python 3 code example reads analog input channels 1 and 2 on the PI-SPI-8AI and writes the same A/D counts to the output channels of the PI-SPI-2AO.

Each digital input of the PI-SPI-8DI operates the corresponding relay output of the PI-SPI8KO.

from time import sleep
from widgetlords.pi_spi import *

init()

dig_inputs = Mod8DI()
relays = Mod8KO()
analog_input = Mod8AI()
analog_output = Mod2AO()

while True:
    # Read digital inputs
    di = (dig_inputs.read())       
    ko = di
    
    # Write relays
    relays.write(ko)
    print(ko)
          
    # Analog Output 1  counts = Analog Input 1 Counts
    an1 = analog_input.read_single(0)
    print(an1)  
    analog_output.write_single(0,an1)
    
    # Analog Output 2  counts = Analog Input 2 Counts
    an2 = analog_input.read_single(1)
    print(an2)
    analog_output.write_single(1,an2)
    
    print("")
    sleep(0.5)