您的位置 首页 培训

用树莓派操控小蜜蜂之主动全屏运转Scratch程序

最近我在忙于由小学发起的、和孩子们合作的一个基于树莓派的项目。我女儿用Scratch写好了代码,下面我需要做的是使其自动运行。本来仅仅通过一个自动启动文件和Scratch演示模式就可实现,但可惜它

  最近我在忙于由小学建议的、和孩子们协作的一个根据树莓派的项目。我女儿用Scratch写好了代码,下面我需求做的是使其主动运转。原本只是经过一个主动发动文件和Scratch演示形式就可完成,但惋惜它只支撑GOPI端口。一起运用Scratch言语和另一种编程言语(这儿是用Python与GPIO通讯)时会弹出一个音讯框“撤销选定‘传感器衔接’”。假如有鼠标和显示器,那操作起来就便利的多了。可本项目开始设计时就不需鼠标,即便显示器也是任选部件,因而需求找到完成Scratch与GPIO通讯的办法,以便Scratch运转自发动“演示形式”,接下来全部就能够主动运转了。

  用树莓派操控小蜜蜂:完成Scratch与树莓派GPIO的通讯

  虽然Scratch不辨认树莓派上的GPIO端口,好在能够和其他程序通讯。因而需求后台运转一个python程序,作为衔接到GPIO的接口。对此能找到不少有用的资源。

  Scratch Wiki对Scratch怎么与Python使用程序通讯做了具体阐释:

  Scratch Wiki: Communicating between Scratch and Python.

  你能够从两个示例RPI:GPIO和WiringPi参阅怎么完成python与树莓派GPIO的通讯。值得幸亏的是Simplesi 现已将其完成,并对怎么装置逐渐详解,咱们只需依照阐明操作就能够了,在此我极力推荐:

ScratchGPIO5的装置

  演示形式下Scratch自发动运转

  演示形式下Scratch当之无愧地全屏自发动运转使用程序。除了在scratch指令中启用演示选项,首要还需求发动scratch处理程序。

  假如你是CympleCy用户,首要需求运转下列代码:

  sudo ps aux | grep 'python.*scratch_gpio_handler.py' | grep -v grep | awk '{print $2}' | xargs sudo kill -9

  sudo python /home/pi/simplesi_scratch_handler/scratch_gpio_handler.py &

  榜首行阻挠当时处理程序运转,第二行重新发动处理程序。假如当时正在发动(我之后会加以解说)则不需求运转榜首行指令。

  经过如下指令使Scratch进入演示形式:

  scratch presentation /home/pi/Documents/Scratch/scratchApp.sb

  留意,Scratch运用的缺省目录叫做“Scratch Projects”。将其增加至脚本时(由于还有其他情况下需求无空格命名,因而操作并非简略地去掉空格),姓名中的空格会形成一些费事,所以我直接去掉空格,将其放入了另一个目录。

  为了简化能够将其放入一独自的脚本。

  首要修正directory /home/pi/Scratch

  cd ~/Scratch

  (留意,这儿我运用回到主目录的快捷键)

  然后在如下目录(leafpad ScratchApp.sh) 中建一个名为ScratchApp.sh的文件。

  #!/bin/bash

  sudo ps aux | grep 'python.*scratch_gpio_handler.py' | grep -v grep | awk '{print $2}' | xargs sudo kill -9

  sudo python /home/pi/simplesi_scratch_handler/scratch_gpio_handler.py &

  scratch presentation /home/pi/Scratch/scratchApp.sb

  颁发履行答应

  chmod +x ScratchApp.sh

  然后创立一自发动脚本

  创立目录(假如目录不存在)

  mkdir ~/.config/autostart

  改为如下目录

  cd ~/.config/autostart

  输入下列指令完毕文件

  [Desktop Entry]

  Encoding=UTF-8

  Version=1.0

  Type=Application

  Exec=/home/pi/Scratch/scratchApp.sh

  Icon=scratch

  Terminal=false

  Name=Program name

  Comment=About the program

  Categories=Application;Education;Development;

  MimeType=application/x-scratch-project

  这样不管何时登陆(假定不管何时发动树莓派,GUI自发动和主动登录都能正常运转),程序都能够运转了。

树莓派文章专题:树莓派是什么?你不知道树莓派的常识和使用

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/changshang/peixun/117468.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部