/EN
产品干货文章 ELVIS III学习札记之Control系列 | 从直流电机控制到倒立摆控制进阶实验 ELVIS III学习札记之python系列 | 用PyCharm解决开发部署及调试痛点 ELVIS III学习札记之Control系列 | 揭秘用QCB板卡进行直流电机控制实验的优势之处 #物联网 #智能设备 用myRIO和AERO构建IoT教学应用 #物联网 #智能设备 用myRIO和QUBE构建IoT教学应用 SystemLink + ELVIS III | 轻松实现线上远程实验的自主开发! Multisim Live + 浏览器 | 线上仿真实验随时随地做! 基于ELVIS III和Python的红外测距实验 ELVIS III + Python | 如何用Python对ELVIS III进行编程开发 ELVIS跨学科综合实验平台 ELVIS III 机电一体化系统实验板卡 ELVIS III 电机原理与应用实验板卡 IECUBE机械旋转设备综合实验台 CompactDAQ数据采集系统 ​NI USRP软件无线电设备 NI PXI高性能测试系统 IECUBE远程线上实验平台助力集创赛NI杯决赛圆满完成 5个数据采集原则,带你轻松选NI DAQ设备 使用ADS基础教学实验平台制作一架特雷门琴 使用ADS分析DAC,ADC和SPI数据 关于ADS与MAC OS的兼容性 使用ADS基础实验平台和LabVIEW搭建心电图测试仪 QUBE Servo 2助力控制实验远程授课! 工科基础实验 | 通过NI ELVIS III实现团队合作 国外学生人手一个的便携式电路实验室 —— Analog Discovery Studio 国外疫情期间卖断货的Engineering Home神器!! NI ELVIS III 工程实验室:教学生如何创新 电力电子基础 - Multisim电力元件 远程实验 | QLabs通过数字孪生技术助力控制理论课程!
返回列表
ELVIS III学习札记之python系列 | 用PyCharm解决开发部署及调试痛点
03.02 2023


关于如何用python对ELVIS III进行嵌入式应用开发,我们过去给大家准备过两篇相关的教程:

《如何用python对ELVIS III进行编程开发》

《利用python在ELVIS lll上实现测距实验》

不少老师和同学参考这两篇教程,成功的在ELVIS III上搭建了python的开发环境并开始用python进行嵌入式应用开发。本文介绍一种新方法,大大提高大家的效率。


1 - 用python开发嵌入式应用的痛点问题


在《如何使用python对ELVIS III进行编程开发》一文的指导下,舒克我很快便搭建好了在ELVIS III 上进行python开发的环境,紧跟着运行了几个官方的范例,LED闪烁的那一瞬间,我满心欢喜,直呼“这事儿有趣”。

可是,程序员难逃的一大宿命是---运行范例一时爽,自己动手铁定躺!

按照之前的范例模式,我们的实验过程大致分为以下几个步骤:

1)   使用文本编辑器编辑代码(我选择了最常用的编辑器Notepad++);

2)   在ELVIS III 平台上搭建电路;

3)   通过FTP将代码文件上传到上位机;

4)   上位机给下位机发出命令,运行代码。

整个流程看上去中规中矩,没什么难度,但实实际上,它暗藏杀机---我的代码应该怎样Debug呢?(这波小舒克真的有很多问号???),因为目前ELVIS III还没有一个配套的python编译器,难道真的要:【编辑代码→上传代码→运行下板看效果→修改代码】这样循环往复,手动盲猜Debug嘛?

事实上,对于第一个小Demo我真就这样干了,其效率之低令人咂舌,过程之痛令人抓狂,调试结果令人泪目。

微信图片_20230302173035.png



2 - PyCharm提供的全新解决方案



针对以上的编程、调试、下板等一些列问题,我展开了分析调查。我们知道,在给ELVIS III 配置python环境的过程中,ELVIS III已经开启了SSH服务器,所以理论上我们是可以通过配置SSH端口对它进行远程开发调试的,最终我们也在PyCharm上实现了这一点。

PyCharm是由JetBrains打造的一款python IDE,它拥有一般IDE具备的功能,比如,调试、语法高亮、Project管理等功能,同时PyCharm还内置终端以及远程SSH工具的使用这很完美的解决了我们在ELVIS III上进行python开发时要面对的调试困难、开发缺乏机动性的问题。正所谓“工欲善其事必先利其器”,搭配好一套完整的开发工具链,这不仅降低了开发的时间开销,提高了灵活性,而且编译器端的调试过程也变得容易轻松且交互友好,这对于解决问题和开发工作往往可以起到事半功倍的效果。


微信图片_20230302173135.png



3 - PyCharm的ELVIS III开发环境搭建部署


1) 安装包下载:

微信图片_20230302173241.png


2) PyCharm的安装:

微信图片_20230302173309.png


微信图片_20230302173323.png


3) PyCharm的界面介绍:


微信图片_20230302173409.png


4) 添加远程的调试环境


a. 在菜单栏中选择【File→Setting】,进入设置页面

微信图片_20230302173436.png


b. 在配置页面中选择

【Project→Project Interpreter→Add Python Inyerpreter】

微信图片_20230302173502.png


c. 选择SSH Interpreter,填入相应的主机地址、用户名和端口进行配置

微信图片_20230302173523.png


5) 通过SSH服务器配置本地与远程服务器同步


a. 在菜单栏中选择

【Tools→Development→Configuration】

微信图片_20230302173610.png


b. 点击【+→SFTP】然后输入服务器名(任意)


微信图片_20230302173642.png


微信图片_20230302173709.png



c. 进行服务器连接配置

微信图片_20230302173802.png


若配置正确,测试连接后会报Successfully connected

微信图片_20230302173842.png


d. Mappings配置

微信图片_20230302173918.png


至此我们需要的远程同步编译环境便搭建好了!!!


4 - PyCharm开发调试演示


1) 选择【File→Open】打开本地的范例文件进行编辑(这里我们选择Button范例),然后再打开[Remote Host]

微信图片_20230302174120.png



微信图片_20230302174141.png



2) 上传文件到服务器端:

a. 在代码框【右键→Development→Upload to***】

b. 在菜单栏【Tools→Development→Upload to ***】


3) 上传成功后,运行button,查看结果(在这一步之前一定要将编译器改为Remote python)


微信图片_20230302174214.png


4) 同时我们还可以对代码进行打断点进行Debug处理


a.在代码中打断点(在需要打断点的代码前点击即可)

微信图片_20230302174301.png


b.上传文件后,在菜单栏点击【Run→Debug】

微信图片_20230302174333.png


c. 在运行结果栏查看变量的值及进行向下调试

微信图片_20230302174410.png


通过视频我们可以看到使用PyCharm进行远程调试及下板是非常实用且方便的。这将大大地提高我们的开发效率。


至此,基于Pyharm对ELVIS III进行python远程开发调试的工具链已经打通,在这套全新的工具链下我们将开启全新的世界!

准备好定制您专属的工程教育产教融合方案了吗?
曾益慧创团队特别希望与您交流,分享我们的行业洞见和成功经验,为您量身定制解决方案。
立即沟通