上一篇:https://bbs.cmnxt.com/forum.php?mod=viewthread&tid=65466
这一篇讲的是Python解释器的选择、函数库的选择,和编程环境的搭建方法。
配置Python
解释器的选择
EV3DEV固件里内置了三种Python解释器,分别是python3、python2和micropython。
名称
| 介绍
| 启动速度
| 推荐程度
| python3
| 基于Cpython的标准的Python 3解释器,功能最完整,版本是python3.5.3
| 慢
| 推荐
| python2
| 基于Cpython的标准的Python 2解释器,功能完整,但是函数库和语法都比较老,已经过时了,版本是2.7.13
| 快
| 已经过时了,不推荐
| micropython
| 针对低性能设备的精简版Python解释器,启动速度最快,但是功能不全
| 快
| 仅用于极端追求高速度的特殊用途
| python2已经过时了,官方已经停止维护,不推荐使用。
micropython是针对低性能设备的精简版Python解释器,优势是启动速度和运行速度极快。缺点是函数库不全,而且网上的许多Python教程、案例用到的常见函数库都和它不兼容,所以不推荐作为主力,可以留作备用。可用于追求高启动速度的场合。
python3功能最全面,网上的教程、案例也很多。缺点是启动速度较慢,我在我的EV3上测试,解释器启动大约需要4秒。
考虑到国内的各种Python编程考试、比赛等多采用Python 3.5作为标准,而且EV3DEV固件默认安装的python3解释器版本恰好是3.5.3,python3无疑是EV3DEV上最合适的Python解释器。
函数库的选择
要想用Python控制EV3的电机和各种传感器的话,就需要用到操作EV3的Python函数库。
由于EV3DEV固件是由社区发起的,所以有许多人为它开发了三种不同的函数库。它们的功能大同小异,都是用Python来控制EV3的传感器和电机。但是用法略有不同,支持的Python解释器也不同。
“ev3dev.ev3”已经停止更新了,不考虑。
“pybricks”尽管有乐高官方支持和维护,但是由于必须使用特殊修改版的micropython解释器才能运行,不支持标准python3解释器,所以不考虑。
“ev3dev2” (也叫ev3dev-lang-python)既支持标准版的python3解释器,又支持micropython解释器(大部分功能都兼容,除了屏幕画图功能无法使用以外),所以本教程会使用ev3dev2函数库来控制EV3的传感器和电机。
函数库名称
| 来源
| 官网
| 是否支持python3解释器
| 是否支持micropython解释器
| 备注
| ev3dev.ev3
| 社区
| https://sites.google.com/site/ev3python/learn_ev3_python
| 是
| 否
| ev3dev固件
| ev3dev2(也叫ev3dev-lang-python)
| 社区(作者说它是ev3dev.ev3的升级版)
| https://github.com/ev3dev/ev3dev-lang-python
| 是
| 是
| ev3dev固件
| pybricks
| 官方
| https://pybricks.com/ev3-micropython/
| 否
| 是
| 需要特殊修改版的micropython解释器,名为pybricks-micropython
|
搭建编程环境
Python编程语言可用的IDE(集成开发环境,可以理解为编程软件)非常多。
乐高官方推荐使用的IDE是VS Code。VS Code功能强大,界面美观。但是,VS Code需要先安装插件才能跟EV3配合使用,配置过程较为麻烦。而且,由于VS Code自由度太高,上课时有学生偷偷地给VS Code安装玩小游戏的插件,破坏上课秩序,故不推荐。
我推荐使用的IDE是Thonny。Thonny是免费、开源、跨平台的PythonIDE,操作简单,对新手很友好,而且支持通过串口或网络远程SSH连接其它设备(例如电脑、树莓派、安卓手机、microbit、ESP32、SPIKEPRIME等)进行编程。
Thonny的官网是https://thonny.org/,可以直接从它的官网下载。如果下载太慢的话,就从国内的第三方软件下载网站下载。
华军软件园:https://www.onlinedown.net/soft/10003029.htm
多特软件站:https://www.duote.com/soft/907839.html
下载后安装即可。在电脑上安装好以后启动Thonny。点击 运行>选择解释器。
在弹出的窗口中点击下拉菜单,在下拉菜单中选择“Remote Python 3 (SSH)”。
填写EV3的IP地址和用户名,然后点击右下角的“确认”按钮。EV3的IP地址在EV3的黑白液晶屏幕左上角有显示,用户名就是默认的“robot”。
此时,会弹出输入密码的窗口。EV3DEV固件的默认账户“robot”的默认密码是“maker”,输入maker,如果想要以后让Thonny自动输入密码的话,就勾选“Savepassword”,然后点击确认按钮。
等待数秒后,Thonny界面下方的交互式终端已经出现“Python 3.5.3”的字样,说明连接成功了。
点击 视图>文件。
屏幕左边会出现文件浏览窗口,左上角的是本机的文件,左下角的是EV3的用户目录(/home/robot)的文件。
至此,Python编程环境已经搭建完成。
|