描述
介绍
在 PLC 中可以进行实时图形绘制,但它们是昂贵的设备。Raspberry Pi 的优势之一是您可以在高性能操作系统上运行时轻松绘制这些类型的图形。在某些情况下,只有电源电压记录是至关重要的。
Raspberry Pi shield MiniIOEx-3G,您可以轻松地将模拟输入电压记录为 4-20mA 或 0-30V,并且借助 Raspbian,您甚至可以每天/每周/每月通过电子邮件访问这些图表。
我们可以使用 Python Tkinter 库创建 GUI。Matplotlib 库还显示了我们在此 GUI 中绘制的图形。必须安装以下库
- Matplotlib
- 太平船务
我们可以通过终端使用以下命令下载库:
$sudo pip3 install –U matplotlib $sudo apt-get install python3-pil.imagetk
我们将在 GUI 设计中使用图标作为按钮。图标的使用使GUI变成了一个更专业的工作。您可以从所需的像素下载 flaticon.com 上的图标。
感谢 PIL 库,您可以在 GUI 中制作动画。例如,您可以在 GUI 中设计水箱的填充。然后将就此主题准备一份额外的文件。
执行本文档中的操作需要以下设备:
- 1 个树莓派 3 B +
- 1 个 MiniIOEx-3G
- 1 个 5V USB 电源适配器
MiniIOEx-3G 的优势之一是集成在 5V 和 24V 电源电压上的模拟输入允许在不需要任何额外设备的情况下进行测量。
注意:您可以在以前的文档中找到有关基本 SPI 功能的重要信息。
调试
安装好设备后,我们就可以开始读取数据了。我们在项目中有 2 页。
- 图表
- 帮助
图形绘制操作仅在 +Charts 页面上执行。如果这个项目是一个真实的项目,它可以包含在其他页面中。我们使用以下库进行树莓派的模拟读取:
#Raspberry Pi IO library import RPi.GPIO as GPIO import spidev
为图形和基本功能调用以下库:
import tkinter as tk import time from tkinter import * from PIL import ImageTk, Imagefrom matplotlib.backends.backend_tkagg import ( FigureCanvasTkAgg, NavigationToolbar2Tk)# Implement the default Matplotlib key bindings. from matplotlib.backend_bases import key_press_handler from matplotlib.figure import Figure
我们有两个页面。这些是图表和帮助页面。Tk.Frame是主要的类结构。Page 是 Charts 和 Help 的主要类。所以我们可以创建任意数量的页面。
当您在终端上运行代码时,您可以检查图形是否在移动:
$python3 PowerSupply_5V_RealTime.py
您可以访问完整代码:https ://github.com/pe2a/miniIOEx3G/tree/master/examples/RealTimeGraphics/PowerSupply_5V
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !