用sparki robot实现myro api的库

sparki-learning的Python项目详细描述


这个项目实现了sparki robot的库,通过蓝牙连接使用python。它旨在帮助使用sparki和/或python进行教学的教育工作者。

从概念上讲,加载到机器人上的库只是一个解释程序,用于sparki通过其serial1(蓝牙)端口接收命令。您可以在任何希望发送命令的平台上实现一个补充库。在本例中,我用python实现了一个库,它使用pyserial库发送这些命令。sparki上的库没有实现sparki上可用的所有命令。具体来说,有几个液晶命令,我一直无法装入斯巴基的内存。从sparki库的1.1.2版本开始,它消耗了小机器人28672字节中的27606字节。也许程序员比我更熟练。

库中的python部分实现了大部分ipre(个人机器人教育研究所)myro api(api参考at<;http://calicoproject.org/Calico_Myro>;)。之所以选择此api,是因为此项目的原始作者使用该程序教授(或教授,具体取决于您何时阅读此文档)一个类。一本免费教科书用来教这个程序可以在-lt;http://calicoproject.org/Learning_Computing_With_Robots_Using_Calico_Python&gt;这里的python库并没有实现所有的库——特别是,任何与相机有关的东西都不能在sparki上实现,因为sparki没有硬件。

利用这个图书馆和你的斯巴克: 一。从arcbotics下载sparkiduino的最新版本:<;http://arcbotics.com/products/sparki/start/>; 2.在您的计算机上(通过git clone或其他方式)复制sparki_myro.ino文件–它必须位于自己的名为sparki_myro的目录中 三。在sparkiduino中加载sparki_myro.ino文件并将其上载到sparki(有关说明,请参见<;http://arcbotics.com/lessons/how-to-upload-sparki-code/>;) 四。你完了!至少,你已经完成了与你的斯巴基有关的部分。除非你有办法和图书馆谈谈,否则图书馆自己不会做什么。

要使用python与库对话: 一。通过蓝牙将Sparki与电脑配对。 2.下载Python3的一个版本——它最初是在Python3.4和Python3的后续版本上开发的。作者相信任何版本的python 3都可以工作<;https://www.python.org/downloads/>;。作者还成功地使用了Python2.7,尽管它没有经过彻底的测试。在我的教室中,我们使用<;https://thonny.org/>;提供的Thonny IDE。 三。使用pypi、easy_install或pip安装库(例如“pip install sparki learning”)。它应该自动为你下载所有的东西。如果您正在使用thonny,则可以转到“工具”->;“管理包”下载库。 四。使用Sparki_学习库来控制你的Sparki!

我在这个项目中编写的所有软件都是在<;http://www.apache.org/licenses/LICENSE-2.0>;提供的apache版本2许可下提供的,并且没有任何保证,包括隐含的保证。我还提供了一些示例/测试程序,供您在python中查看,以了解如何使用库。

bresenham线算法的实现改编自https://github.com/encukou/bresenham,并在mit许可下提供。

这两个图书馆都是为了帮助学生和教育工作者而写的,并得到了相当好的评价。我已经测试过一些,但它们可能不适用于所有人的所有平台。可能有虫子。可能有一些问题会导致你的斯巴克的毁灭(虽然我不认为有)。在使用本软件时,您承担一切风险。

最后,我包括了一个越来越长的“快速参考”表,记录了这些库。也可以在<;https://sparki-learning.readthedocs.io/en/latest/>;

斯巴基是一个优秀的小机器人,我希望这对你探索世界有用。祝你好运!

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何定制springdata存储库方法名称?   html有没有办法将java应用程序或JApplet嵌入到网站中?   Jackson ObjectMapper将java从字符串序列化为JSON作为namevalue   java刷新JTable?   用Java程序分发用JavaDB制作的数据库   java Android如何启动新活动   当集合大小超过500.000时,java的处理速度会显著降低   在java的分层目录中的多个目录中查找相同的文件   java如何将ArrayList数据插入数据库   java如何修改此代码,使其时间复杂度为o(logn)或o(n),而不是o(n^2)   java面板(SimplePanel)中仅显示图像的前1/3(大约),   jakarta ee Java Bean和企业Java Bean之间的区别?   创建AWS Cloudfront自签名URL(java sdk)时出现amazon web服务错误   基于Jersey和Jackson查询参数的java动态属性过滤