如何在启动时将我的python代码放在​​raspberry pi中

时间:2017-07-22 08:16:52

标签: python raspberry-pi

我想在raspberry pi中启动我的python代码。

我尝试了rc.local,。/ batrc,但启动程序正在运行&我正在使用opencv + camera + voice命令。那不能正常启动。

请给我一个在启动时运行语音+摄像头+ opencv + python代码的方法。

1 个答案:

答案 0 :(得分:0)

我建议将其作为以下文章的方法4中提到的服务运行:

https://www.dexterindustries.com/howto/run-a-program-on-your-raspberry-pi-at-startup/

步骤1-创建单元文件

使用如下命令打开样本单元文件:

sudo nano /lib/systemd/system/sample.service

添加以下文字:

 [Unit]
 Description=My Sample Service
 After=multi-user.target

 [Service]
 Type=idle
 ExecStart=/usr/bin/python /home/pi/sample.py

 [Install]
 WantedBy=multi-user.target

您应该保存并退出nano编辑器。

enter image description here

这定义了一个名为“Sample Service”的新服务,我们要求在多用户环境可用后启动它。 “ExecStart”参数用于指定我们要运行的命令。 “Type”设置为“idle”以确保ExecStart命令仅在其他所有内容都已加载时运行。请注意,路径是绝对的,并定义了Python的完整位置以及Python脚本的位置。

为了将脚本的文本输出存储在日志文件中,您可以将ExecStart行更改为:

ExecStart=/usr/bin/python /home/pi/sample.py > /home/pi/sample.log 2>&1

单位文件的权限需要设置为644:

sudo chmod 644 /lib/systemd/system/sample.service

第2步 - 配置systemd

现在已经定义了单元文​​件,我们可以告诉systemd在引导序列期间启动它:

sudo systemctl daemon-reload
sudo systemctl enable sample.service

重新启动Pi,您的自定义服务应该运行:

sudo reboot

enter image description here