Detect "temperature (using A / D converter)" using python on Raspberry Pi 3!

Introduction

My name is Ryosuke Kamei and I am an IT consultant based on the idea of "gentle IT"! Currently, in my work, I am doing upstream processes focusing on requirements analysis and requirements definition, but I also write programs! As part of our friendly IT activities, we will introduce "Raspberry Pi 3" (commonly known as Raspberry Pi), which has the philosophy of "providing inexpensive PCs that can be programmed for education"!

This time, we will detect the brightness! It is a temperature sensor that uses an analog temperature sensor and an A / D converter! [Razpai Magazine-June 2016 Issue Special Feature 1 Akiba's Popular Parts Wiring Diagram Best 17 13 Can Use Inexpensive Temperature Sensors](https://www.amazon.co.jp/ Razpai Magazine-June 2016 Issue -Nikkei BP PC Best Mook-Nikkei Linux-ebook / dp / B01EH2RX42 / ref = as_li_ss_tl? Ie = UTF8 & dpID = 61P3o6Agz + L & dpSrc = sims & preST = _OU09__BG0,0,0,0_FMpng_AC_UL160_SR120,0_FMpng_AC_UL160_SR120 It is based on 18fd04738627edef8d6fffd6c9b8f9c2).

procedure

  1. Wiring
  2. Program temperature_sensor.py
  3. Run the program

1. Wiring

The wiring diagram is [Razpai Magazine-June 2016 Special Feature 1 Akiba's Popular Parts Wiring Diagram Best 17 13 You can use an inexpensive temperature sensor](https://www.amazon.co.jp/ Razpai Magazine-2016 June issue-Nikkei BP PC Best Mook-Nikkei Linux-ebook / dp / B01EH2RX42 / ref = as_li_ss_tl? Ie = UTF8 & dpID = 61P3o6Agz + L & dpSrc = sims & preST = OU09__BG0,0,0,0_FMpng_AC_UL160 sr2smail-22 & linkId = 18fd04738627edef8d6fffd6c9b8f9c2) As it is.

If you get an image like this, referring to the picture of the circuit Raspberry Pi 3でpythonを使い「温度(ADコンバーターを利用)」を検出する!回路.jpg

I also made a video Click the video commentary →

Text version From the Raspberry Pi side

--Raspberry Pi Pin 1 (3.3V) --AD Converter 8 Vdd --Raspberry Pi 2nd pin (5V) --Analog temperature sensor left side --Raspberry Pi 19th pin (MOSI) --AD converter 5 MOSI --Raspberry Pi 21st pin (MISO) --AD converter 6 MISO --Raspberry Pi 23rd pin (SCLK) --AD converter 7 CLK --Raspberry Pi 24th pin (CE0) --AD converter 1 CS --Raspberry Pi 6th pin (GND) --AD converter 4 Vss --Raspberry Pi 6th pin (GND) --Analog temperature sensor right side

From AD converter (difference only)

--AD converter pin 2 (CH0) --Analog temperature sensor center

2. Program temperature_sensor.py

Program is also [Razpai Magazine-June 2016 Issue Special Feature 1 Akiba's Popular Parts Wiring Diagram Best 17 13 Can Use Inexpensive Temperature Sensor](https://www.amazon.co.jp/ Razpai Magazine-2016 6 Monthly issue-Nikkei BP PC Best Mook-Nikkei Linux-ebook / dp / B01EH2RX42 / ref = as_li_ss_tl? Ie = UTF8 & dpID = 61P3o6Agz + L & dpSrc = sims & preST = _OU09__BG0,0,0,0_FMpng_AC_UL160_SR120 22 & linkId = 18fd04738627edef8d6fffd6c9b8f9c2) is referred to.

The source is uploaded to GitHub, so please use it as you like.

Clone with git


$ git clone https://github.com/RyosukeKamei/raspberrypi3.git

temperature_sensor.py


#Library to control GPIO
import wiringpi
#Timer library
import time

# MCP3002(A/Specify the channel to which the D converter) is connected
SPI_CH = 0

#MCP3002 to be read (A/Specify the analog input channel of the D converter)
READ_CH = 0

#SPI initialization
wiringpi.wiringPiSPISetup( SPI_CH, 1000000 )

while True:
    # MCP3002(A/Create data to send to D converter)
    buffer = 0x6800 | ( 0x1800 * READ_CH )
    buffer = buffer.to_bytes( 2, byteorder='big' )
    
    #Get the value of CH0 using SPI
    wiringpi.wiringPiSPIDataRW( SPI_CH, buffer )
    
    #The values are sent in 2 bytes, so combine them into one value.
    input_value = ( buffer[0] * 256 + buffer[1] ) & 0x3ff
    
    #Convert input value to voltage
    volt = input_value * 3.3 / 1023
    
    #Multiply the acquired voltage by 100 to get the temperature
    temperature = volt * 100
    
    #display
    print ("temperature: ", temperature, "Voltage: ", volt)
    
    #Detected by 1 second
    time.sleep(1)

3. Run the program

I recorded the video of how it is moving. Click the video commentary →

Activate the temperature sensor


$ sudo python3 temperature_sensor.py

site map

Raspberry Pi 3 setup

Install Raspberry Pi 3 → Wireless LAN → Japanese input / output → Operate from Mac

Build a Python + MySQL environment with Docker on Raspberry Pi 3!

Install Docker on RaspberryPi3 Build a Python + bottle + MySQL environment with Docker on RaspberryPi3![Easy construction] Build a Python + bottle + MySQL environment with Docker on RaspberryPi3![Trial and error]

Make an air conditioner integrated PC "airpi" with Raspberry Pi 3!

Make an air conditioner integrated PC "airpi" with Raspberry Pi 3!

Let's play with Raspberry Pi 3 and python

Programming with Node-RED programming with Raspberry Pi 3 and programming normally Light the LED with python on Raspberry Pi 3 (Hello World) Detect switch status on Raspberry Pi 3 Run a servo motor using python on Raspberry Pi 3 Control the motor with a motor driver using python on Raspberry Pi 3! Detect slide switch using python on Raspberry Pi 3! Detect magnet switch using python on Raspberry Pi 3! Detect temperature using python on Raspberry Pi 3! Sound the buzzer using python on Raspberry Pi 3! Detect analog signals with A / D converter using python on Raspberry Pi 3! Detect "brightness" using python on Raspberry Pi 3! Detect "temperature (using A / D converter)" using python on Raspberry Pi 3! Output to "7-segment LED" using python on Raspberry Pi 3!

Rules focused on test-driven development

Coding rules "Let's write gentle code" (FuelPHP) Naming convention "Friendly to yourself, team-friendly, and unseen members after 3 months"

Web application development with Docker + Python

Install Python3, related libraries pip, virtualenv and frameworks Django, bottle, Flask on CentOS on Docker! With a Dockerfile that summarizes these!

Easy to develop environment construction (Docker + PHP)

PHP environment + Eclipse is linked to Apache using Docker Building FuelPHP development environment using Docker Create CRUD skeleton using initial settings of FuelPHP development environment using Docker and scaffold FuelPHP database migration

Recommended Posts

Detect "temperature (using A / D converter)" using python on Raspberry Pi 3!
Detect temperature using python on Raspberry Pi 3!
Detect analog signals with A / D converter using python on Raspberry Pi 3!
Detect slide switches using python on Raspberry Pi 3!
Detect magnet switches using python on Raspberry Pi 3!
Using the 1-Wire Digital Temperature Sensor DS18B20 from Python on a Raspberry Pi
Run servomotor on Raspberry Pi 3 using python
Control the motor with a motor driver using python on Raspberry Pi 3!
Try using a QR code on a Raspberry Pi
Sound the buzzer using python on Raspberry Pi 3!
Build a Python development environment on Raspberry Pi
Try using the temperature sensor (LM75B) on the Raspberry Pi.
Output to "7-segment LED" using python on Raspberry Pi 3!
[Raspberry Pi] Publish a web application on https using Apache + WSGI + Python Flask
Access google spreadsheet using python on raspberry pi (for myself)
Try using ArUco on Raspberry Pi
Detect switch status on Raspberry Pi 3
Using a webcam with Raspberry Pi
[Note] Using 16x2-digit character LCD (1602A) from Python with Raspberry Pi
Adafruit Python BluefruitLE works on Raspberry Pi.
Working with GPS on Raspberry Pi 3 Python
Use BME280 temperature / humidity / barometric pressure sensor from Python on Raspberry Pi 2
[Python + PHP] Make a temperature / humidity / barometric pressure monitor with Raspberry Pi
Build a Django environment on Raspberry Pi (MySQL)
Finally ... Make a radio control using python on Raspberry Pi 3! (The motor moves while the button is pressed)
Make DHT11 available on Raspberry Pi + python (memo)
Create a visitor notification system using Raspberry Pi
Display CPU temperature every 5 seconds on Raspberry Pi 4
Connect to MySQL with Python on Raspberry Pi
Measure CPU temperature of Raspberry Pi with Python
Creating a temperature control system with Raspberry Pi and ESP32 (3) Recipient Python file
Use Raspberry Pi Python to TMP36 analog temperature sensor and MCP3008 AD converter
Finally ... Make a radio control using python on Raspberry Pi 3! (The motor moves while the magnet is brought closer)
pigpio on Raspberry pi
Cython on Raspberry Pi
Record temperature and humidity with systemd on Raspberry Pi
Build an OpenCV4 environment on Raspberry Pi using Poetry
Create a color sensor using a Raspberry Pi and a camera
Monitor temperature using Raspberry Pi + Alibaba cloud IoT platform
Try debugging Python on Raspberry Pi with Visual Studio.
Until drawing a 3D graph in Python on windows10
Build a Python environment on your Mac using pyenv
Ubuntu 20.04 on raspberry pi 4 with OpenCV and use with python
Build a Python development environment using pyenv on MacOS
Install pyenv on Raspberry Pi and version control Python
Install PyCall on Raspberry PI and try using GPIO's library for Python from Ruby
[Blender Python] Display images on 3D View using OpenGL (bgl)
VScode intellisense doesn't work on Raspberry Pi OS 64bit! (Python)
Run AWS IoT Device SDK for Python on Raspberry Pi
Building a Python environment on a Mac and using Jupyter lab
Cross-compiling for Raspberry Pi Zero on Debian-Try using shared libraries
How to transpose a 2D array using only python [Note]
[Treasure Data] [Python] Execute a query on Treasure Data using TD Client
Raspberry Pi + Python + OpenGL memo
I tried using the DS18B20 temperature sensor with Raspberry Pi
I tried to automate [a certain task] using Raspberry Pi
getrpimodel: Recognize Raspberry Pi model (A, B, B +, B2, B3, etc) with python
raspberry pi 1 model b, python
AtCoder ABC 182 Python (A ~ D)
Broadcast on LINE using python
Introduced pyenv on Raspberry Pi