在Minecraft Java版中安装MCreator Link,并与Raspberry Pi进行交互,将信息POST到kintone

Minecraft Java版 と Raspberry Pi に MCreator Link を入れて、 Minecraft と Raspberry Pi で通信できるようにする方法です。
(最後におまけで、Minecraftの操作でkintoneにPOSTできるようなコードもあるよ。)

MCreator Link の環境構築の手順としてはコチラに書いてある通りに進めます。

Minecraft (Java版) 的側邊設定

让我们从电脑端的设置开始吧?

请下载MCreator Link。

请从这里下载与您喜欢的Minecraft Java版版本相匹配的MCreator Link。

image.png

Forgeをインストールする

我按照这个步骤进行了安装。

MCreator Link(MCreator Link 1.3 [1.16.5].jar) を mods フォルダに移動する

我已经按照此链接将下载的 MCreator Link 1.3 [1.16.5].jar 文件移动到这里。

树莓派的设置

安装 MCreator Link

如果未安装Java8,请使用此命令在此处安装Java8。
$ sudo apt-get install openjdk-8-jdk

我們將透過 SSH 連接到 Raspberry Pi,並執行以下指令:
$ curl -sL https://mcreator.net/linkpi | sudo bash

しばらく待つとMCreator Linkがインストールされます。
インストールが終わったら、Ctrl + Cなどを押してbashに戻ります。

Python

安装RPi.GPIO软件包。

请使用sudo pip安装rpi.gpio

我会写代码。
每秒读取 Raspberry Pi 的18号引脚(好像是指Minecraft中的第1号引脚)
只需要将其改写为0的程序。将其保存为 test.py 文件名。

import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BCM)
GPIO.setup(18, GPIO.OUT)
for i in range(0, 60):
    print GPIO.input(18)
    if GPIO.input(18) == 1:
        GPIO.output(18, 0)
    time.sleep(1)
GPIO.cleanup()

Minecraft 的操控

先程のMod導入済みの起動構成で立ち上げ、
タイトル画面が表示されたら「L」キーを押します。

するとMCreator Link のdevice設定画面が表示されます
IP Connect ボタンをクリックします。

image.png

Raspberry Pi のIPアドレスを入力して、Connect ボタンをクリックします

image.png

点击“完成”按钮。

image.png

请输入命令。

在Minecraft和Raspberry Pi两方面输入命令。

Minecraft的准备

确认连接设备

image.png

pinmode を output にします。
/link pinmode output

image.png

ここまでできたら、Raspberry Pi で先程のPythonのコードを実行します。
python test.py

在Python运行的同时

在Minecraft中的命令行中,将数字1写入到1号引脚中。
或者:
通过Minecraft中的指令,将1写入到1号引脚中。

image.png

我认为你能够理解,当在Minecraft中建立1时,树莓派就会将其恢复为0。

尝试在kintone上应用

我先前的代码,如果按照下面的方式进行修改,就能实现在Minecraft上,把1放在一个引脚上时,向kintone发送POST请求的机制,我来介绍一下。

请先参考以下关于kintone和Raspberry Pi的合作方式。

コマンドブロックやレッドストーン回路を組み合わせて
出退勤システムなどが作れそうです。(はたして需要はあるのか)

import RPi.GPIO as GPIO
import time
import requests
import json

GPIO.setmode(GPIO.BCM)
GPIO.setup(18, GPIO.OUT)
for i in range(0, 60):
    print GPIO.input(18)
    if GPIO.input(18) == 1:
        GPIO.output(18, 0)
        url = 'https://【kintoneのサブドメイン】.cybozu.com/k/v1/record.json'
        payload = {'app':'【アプリID】', 'record':{'test':{'value':'from_RaspberryPi'}}}
        headers = {'content-type': 'application/json', 'X-Cybozu-API-Token':'【APIトークン】'}
        r = requests.post(url, data=json.dumps(payload), headers=headers)
        print r.text
    time.sleep(1)
GPIO.cleanup()

参考链接集合

bannerAds