首页 / 行业
怎样用Wekinator控制与树莓派连接的LED
2019-07-26 09:20:00
电路图
首先,将LED的正极连接到Raspberry Pi的GPIO4,然后将LED的负极连接到gro Raspberry Pi的引脚通过220欧姆电阻器。
安装软件
您需要在Raspberry Pi上安装处理IDE。在这里下载Linux ARMv6hf的处理。
下载后,将其放入要安装处理的文件夹中。然后,右键单击它并单击“在此处提取”。现在将创建一个名为“处理”的文件夹。右键单击此文件夹,然后选择“在终端中打开”。终端窗口将打开。在其中键入以下命令,处理IDE将打开。
。/processing
现在您需要安装Wekinator软件。所以转到下面的链接并点击“任何操作系统,包括Linux”。
下载后,将其放在要安装的位置,然后右键单击它,然后单击“在此处提取”。将创建一个新目录。右键单击它并选择“Run in terminal”。在终端中,编写以下命令,Wekinator将开始运行。
java -jar WekiMini.jar
入门
现在将这篇文章末尾给出的代码粘贴在两个单独的处理草图中并运行它们。在Wekinator窗口中,进行如下设置。将输入和输出设置为1,将类型设置为“所有分类器”,分为2个类。
点击“下一步”,将打开一个新窗口如下所示。
打开处理窗口,单击绿色三角形,然后开始录制半秒钟。单击红色圆圈并将类更改为2(在输出-1前面)。然后开始录制半秒钟。
之后,单击“训练”,然后单击“运行”。现在,当您点击绿色三角形时,连接到Raspberry Pi的LED将亮起,当您点击红色圆圈时,连接到Raspberry Pi的LED将关闭。
处理代码(输入到Wekinator)
// Importing the library which will help us in communicating with the wekinator
import oscP5.*;
import netP5.*;
//creating the instances
OscP5 oscP5;
NetAddress dest;
float bx;
void setup() {
// Size of output window
size(200, 50, P3D);
// Starting the communication with wekinator. listen on port 9000, return messages on port 6448
oscP5 = new OscP5(this,9000);
dest = new NetAddress(“127.0.0.1”,6448);
}
void draw() {
// Creating the boxes in output window
blocks();
// Send the OSC message to wekinator
sendOsc();
}
void mousePressed()
{
// If mouse is pressed in the first box
if (mouseX 》 0 && mouseX 《 50)
{
bx=1;
}
// If mouse is pressed in the second box
if (mouseX 》 100 && mouseX 《 150)
{
bx=2;
}
}
void sendOsc() {
OscMessage msg = new OscMessage(“/wek/inputs”);
msg.add((float)bx);
oscP5.send(msg, dest);
}
void blocks()
{
background(0);
fill(0, 128, 0);
ellipse(25, 25, 50, 50);
fill(255);
text(“ON”, 10, 30);
fill(255, 0, 0);
ellipse(125, 25, 50, 50);
fill(255);
text(“OFF”, 120, 30);
}
处理代码(Wekinator的输出)
// Importing the library that will help us in controlling the GPIO pins of raspberry pi
import processing.io.*;
// Importing the library which will help us in communicating with the wekinator
import oscP5.*;
import netP5.*;
// Creating the instances
OscP5 oscP5;
NetAddress dest;
// Variable to store the output
public int output;
void setup()
{
// Setting the GPIO 4 as output pin
GPIO.pinMode(4, GPIO.OUTPUT);
// Starting the communication with wekinator. listen on port 12000, return messages on port 6448
oscP5 = new OscP5(this, 12000);
dest = new NetAddress(“127.0.0.1”, 6448);
}
// Recieve OSC messages from Wekinator
void oscEvent(OscMessage theOscMessage) {
if (theOscMessage.checkAddrPattern(“/wek/outputs”) == true) {
// Receiving the output from wekinator
float value = theOscMessage.get(0).floatValue();
// Converting the output to int type
output = int(value);
}
}
void draw()
{
// Making the led HIGH or LOW depending on the output from the wekinator
if (output == 1)
{
GPIO.digitalWrite(4, GPIO.HIGH);
}
else if (output == 2)
{
GPIO.digitalWrite(4, GPIO.LOW);
}
}
最新内容
手机 |
相关内容
逆变器技术对新能源汽车市场增长的
逆变器技术对新能源汽车市场增长的重要性,市场,新能源汽车,逆变器,控制,高效率,能和,随着全球对环境保护和可持续发展的关注不断增什么是高压接触器,高压接触器的组成
什么是高压接触器,高压接触器的组成、特点、原理、分类、常见故障及预防措施,高压,分类,闭合,用于,操作,损坏,AD694ARZ高压接触器是什么是射流继电器,射流继电器的基本
什么是射流继电器,射流继电器的基本结构、技术参数、工作原理、负载分类、如何选用、操作规程及发展历程,继电器,工作原理,分类,负什么是NFC控制器,NFC控制器的组成、
什么是NFC控制器,NFC控制器的组成、特点、原理、分类、常见故障及预防措施,控制器,分类,模式,移动支付,数据,信号,NFC(Near Field Com什么是电机启动器,电机启动器的基本
什么是电机启动器,电机启动器的基本结构、优缺点、工作原理、类型、检测、操作规程及发展历程,工作原理,类型,检测,结构,启动,断开,射频连接器使用技巧与注意事项
射频连接器使用技巧与注意事项,连接器,选择,频率,类型,连接,传输,射频连接器是一种用于连接射频电路的电子元件,常用于无线通信系统电流互感器作用 电流互感器为什么
电流互感器作用 电流互感器为什么一端要接地?,作用,误差,原因,连接,测量,短路故障,电流互感器(Current Transformer,简称CT)是一种用于低耗能,小安派-LRW-TH1传感器通用板
低耗能,小安派-LRW-TH1传感器通用板,一块板即可连接多种传感器!,传感器,多种,连接,一块,通用,接口,小安派-LRW-TH1传感器通用板是一款