<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>乐高机器人</title>
	<atom:link href="https://www.aitaocui.cn/tag/227922/feed" rel="self" type="application/rss+xml" />
	<link>https://www.aitaocui.cn</link>
	<description>翡翠玉石爱好者聚集地</description>
	<lastBuildDate>Sat, 26 Nov 2022 19:05:17 +0000</lastBuildDate>
	<language>zh-CN</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.1.1</generator>

<image>
	<url>https://www.aitaocui.cn/wp-content/uploads/2022/11/taocui.png</url>
	<title>乐高机器人</title>
	<link>https://www.aitaocui.cn</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>乐高机器人(教育玩具)</title>
		<link>https://www.aitaocui.cn/article/339660.html</link>
					<comments>https://www.aitaocui.cn/article/339660.html#respond</comments>
		
		<dc:creator><![CDATA[呵呵呵]]></dc:creator>
		<pubDate>Sat, 26 Nov 2022 19:05:17 +0000</pubDate>
				<category><![CDATA[知识]]></category>
		<category><![CDATA[乐高机器人]]></category>
		<guid isPermaLink="false">https://www.aitaocui.cn/?p=339660</guid>

					<description><![CDATA[Lego Mindstorms（乐高机器人）是集合了可编程主机、电动马达、传感器、Lego Technic部分（齿轮、轮轴、横梁、插销）的统称。Mindstorms起源于益智玩具中...]]></description>
										<content:encoded><![CDATA[</p>
<article>
<p>Lego Mindstorms（乐高机器人）是集合了可编程主机、电动马达、传感器、Lego Technic部分（齿轮、轮轴、横梁、插销）的统称。Mindstorms起源于益智玩具中可编程传感器模具（programmable sensor blocks）。第一个Lego Mindstorms的零售版本在1998年上市，当时叫做Robotics Invention System (RIS)。最近的版本是2013年上市的Lego Mindstorms EV3。</p>
<p>许多语言都对Mindstorms进行编程，Computer Clubhouses是专注于Mindstorms编程的网站。LEGO MINDSTORMS Robotics Invention System（以下称为乐高机器人套件），是针对12岁以上的小孩或大人，对机器人有兴趣（或者启发自动控制教育）的教育玩具。这项产品计划始于1986，由丹麦乐高公司和美国麻省理工学院的媒体实验室（Media Lab）进行的一项「可编程式积木（Programmable Brick）」的合作案。</p>
</article>
<p><img decoding="async" src="https://www.aitaocui.cn/wp-content/uploads/2022/08/20220829_630c2586322ee.jpg" /></p>
<article>
<h1>资料</h1>
<div></div>
<p>乐高机器人套件的核心是一个称为RCX或NXT或EV3的可程序化积木。RCX具有六个输出输入口：三个用来连接感应器等输入设备，另外三个用于连结马达等输出设备，NXT比RCX多一个输入 端口。乐高机器人套件最吸引人之处，就像传统的乐高积木一样，玩家可以自由发挥创意，拼凑各种模型，而且可以让它真的动起来。</p>
<p>RCX分为1.0（1998年）、1.5（1999年）和2.0（从2001年）等三个版本。1.0和1.5的差别在于1.0版可以外接电源供应器，连接市电（通过变压器实现）供电，而1.5版之后只能用电池供电。2.0的差别则是连接电脑的红外线设备改用USB，以往则是采用串行端口，最重大的区别则是2.0版的固件（firmware）和程序开发工具提供了一些新的功能。RCX的固件最主要的用途是把bytecode程序转换成处理器所能理解的机器码。还好RCX的固件就像电脑的 BIOS一样，都是可以更换的，所以不同版本之间的差异其实不大。RCX的固件存放在SRAM（静态可存取记忆体）中，所以实际上，RCX断电几秒钟之后，固件就消失了。电脑会在传送程序时，一并传送固件给RCX。</p>
<p>如果用传统的方式学习制作机器人，我们得先学习电脑基本概论，接着要了解电子电路、数位逻辑和微处理器，才能制作出基本的微电脑控制电路。然后还要学习汇编语言（Assembly）或C语言，撰写微处理器的程序…对了，也许最麻烦的是机械结构，我们得决定要用步进马达还是一般的直流马达，不同的驱动形式，信号的驱动和回馈处理方式也不一样；而且即便是采用最单纯的轮胎或履带作为行走方式，也可能要搭配各种齿轮来调配扭力和速度。想到要学习、DIY这么多东西，很多对自制机器人怀抱憧憬的业余玩家，满腔热血到此就凉了大半截。</p>
<p>乐高机器人组合里面，包含RCX、两个马达、两个触控感测器和一个红外线感测器，各种大小的轮胎和履带，以及数种规格的齿轮和滑轮，当然还有各种积木，帮我们解决了电子电路和机械结构的问题。剩下的「撰写程序」部分，乐高公司（或者说MIT研究人员）也替它开发了一套视觉化程序编辑工具，叫做RCX Code。就像堆积木一样，RCX Code的使用者只要把各种代表不同程序逻辑的「积木」在屏幕上堆起来，就能完成RCX的程序。程序撰写完毕后，通过过套件提供的红外线装置，即可把程序传入RCX。</p>
<p>不过每个人对「酷」的定义不同。乐高提供的视觉化程序工具很适合新手或者对程序不熟悉的玩家，有些人觉得用这种接口还写程序反而碍手碍脚。例如，使用RCX Code所「写」出来的复杂程序，执行效率也许不佳，而且「视觉化」程序码也可能不易读，也不容易维护。因此，许多乐高机器人的爱好者兼程序设计高手，陆续替它开发出各种「正规」程序语言。</p>
<p>在这些玩家中，最著名（也许贡献也最大）的是Kekoa Proudfoot教授，他仔细地分析了RCX的内部结构和I/O协定，并且在他的RCX Internals网站上发表了许多文件。另一个知名的玩家是David Baum，他开发了一种类似C语言的程序，称为NQC（Not Quite C），让程序玩家摆脱视觉开发工具的束缚。虽然NQC并不是RCX上的第一个「非官方」程序语言，但大概是最被广泛采用的一种。NQC本身采用文字接口操作，若想要使用图形接口式的整合开发环境（IDE），可以安装BricxCC（Windows版）或MacNQC（Mac版），甚至NQC for WinCE（适用于PocketPCPDA）。</p>
<p>此外，乐高的RCX Code视觉工具程序只有Windows版本，在Mac和Linux系统上只能使用非官方的程序工具。并不是所有玩家仅仅喜爱或熟悉C语言，Jose Solorzano就开发了一个称为「Lego Java作业系统」，简称leJOS的Java虚拟机（JavaVirtual Machine，简称JVM，是执行Java程序所需的软体环境），可以让RCX执行Java程序。Ralph Hempel开发的pbForth（programmablebrick Forth，可程序积木Forth语言的简称），也深受某些玩家的喜爱。Forth语言的第一个实作专案是用来控制天文台的大型望远镜（请参阅这个网页的介绍），它的语法和其他常见的电脑语言最大的不同，在于它采用所谓的「反相波兰式记法（reverse Polishnotation，简称RPN）」，例如，运算式3 * ( 4 + 7)要写成：3 4 7 + * 另外还有一个由Markus Noga所开发，让程序设计师采用C或C++语言控制RCX的固件，称为legOS。legOS可以让程序设计师彻底发挥RCX硬体的效能，但是不像NQC，使用者必须熟悉C语言，而且它的开发工具安装不易，所以使用者也比较少。</p>
<p>除了LEGO MINDSTORMS套件之外，乐高公司还针对教育机构发售一种称为ROBOLAB（姑且翻译成「机器人实验室」）的套件，里面包含更多感应器（例如，压力、音量、温度检测），以及连结视讯摄影镜头（并不限于乐高自己的Vision Command产品）并提供视觉辩识功能，更特别的是，它的软体还具备资料分析、比较和图表绘制功能，对于教学实验尤其重要。ROBOLAB软体也能透过网际网路连结到ROBOLAB Server（包含在产品的软体里），把收集到的数据呈网页。ROBOLAB内建的软体有Windows和Mac版。</p>
<p>乐高公司推出了新一代的乐高机器人，叫做LEGO MINDSTORMS NXT，这款新乐高机器人采用了32位微处理器、内建USB和蓝牙（这一设计极大地提高了程序传输的速度和稳定性），可以让使用者做出透过蓝牙装置（例如PDA或手机）控制的机器人。NXT内附的程序编辑工具支持PC和Mac，为了吸引更多玩家参与扩充与改造NXT，乐高公司特别发表了开放原始码的固件和开发工具，就连微软老大哥都忍不住加入机器人开发软体的行列，推出MicrosoftRobotics Studio软体。除了主机功能大幅增强，NXT的马达也改采伺服控制，能让程序精确地调整速度，而且这次附了三个马达；感测器也变得多样、功能更强：超音波感应器（大多用于感应障碍物），能够辩识颜色和亮度的光线感应器…等等，不知道乐高的玩家们会用NXT带来什么样的惊喜。</p>
<h1>编程</h1>
<p>Lego Mindstorms（乐高机器人）编程Lego砖块、电动马达、传感器、Lego Technic部分（齿轮、轮轴、横梁）的统称。 许多语言都能对Mindstorms进行编程，包括Logo、Basic、Java的衍生版、Smalltalk和C语言。</p>
<p>《乐高机器人设计技巧：动力结构设计与搭建实例指导》人民邮电出版社，作者码高机器人教育。</p>
</article>
<div class="mt-3 mb-3" style="max-width: 770px;height: auto;">
                                    </div>
<div class="mt-3 mb-3" style="max-width: 770px;height: auto;">
                                    </div>
<div class="mt-3 mb-3" style="max-width: 770px;height: auto;">
                                    </div>
]]></content:encoded>
					
					<wfw:commentRss>https://www.aitaocui.cn/article/339660.html/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
