Skip to main content

Posts

Showing posts with the label Programming

Hour of Code -> Hour of EV3

Hour of EV3 by guest bloggers Sanjay and Arvind Seshan of EV3Lessons Hour of EV3 Learning to program is a very important skill. The Hour of Code movement was started several years ago and reaches tens of millions of students in 180+ countries for everyone (ages 4-104). Hour of Code is held during the week of December 7-13, in celebration of Computer Science Education Week. Hour of Code promo video Hour of Code introduces students to various programming languages such as Python and Scratch and shows them that coding is both fun and achievable. LEGO® MINDSTORMS®  can be used to achieve the same purpose. We have found the LEGO® MINDSTORMS® to be a great platform for learning programming skills – everything from learning to write comments to creating complex algorithms.  The LEGO® MINDSTORMS® kit is “more than a toy”.  From prototyping possibilities to using as a platform to teach coding skills, it is fun and versatile. LEGO®  recently announced...

Programming EV3 in ANSI C

Today we have a guest blog post by JAsVAp who was active in the area of EV3 programming with C: "Ever wanted to have a simple way for programming your Lego EV3 in it's native programming language ANSI C? Well now it is possible! I have made an IDE application for it. Your code will be running super fast as it is compiled to run directly on your CPU and not for an intermediat virtual machine!!! And the best thing I want to share it with everybody for FREE. You can download it at my temporary website or on my onedrive . A first version of documentation is included in the program it self ( README.txt ), but it may not be sufficient enough for everbody. When I find some more time I will create some more example project. Some important features: No need for a firmware upgrade!!! So an EV3 out of the box will do.  Your program can be executed from original Lego EV3 menu on your device! You can setup a Telnet connection ( wifi connection - linux remote terminal ) an...

NXT Physical Programming

Making robot programming easier for young children: NXT Physical Programming with colored balls, introduced by a couple of teachers students from the Independent Academy for Free School teaching in Denmark. Incidentally, MCP Mike Brandl had a similar idea some years ago with his Color Programable Car .

Programming IDE for EV3 in action

On the LEGO® MINDSTORMS You Tube channel, a new video by LEGO® Education provides a preview on the official programming IDE  for the upcoming MINDSTORMS generation EV3 in action:

Simulink for the NXT

The new version of Simulink , the MATLAB -based modelling software by MathWorks , has a new feature that is particularly interesting for NXT builders: developing NXT robot programs and executing them autonomously on the NXT brick. As the release's features site states: " Students can use Simulink to create algorithms for control systems and robotics applications. They can apply industry-proven techniques for Model-Based Design to verify that their algorithms work during simulation. They can then implement the algorithms on LEGO MINDSTORMS NXT as standalone, real-time applications. Students can download a program to the robot using a USB cable. Once programmed, these robots can run autonomously while students interact and monitor remotely using Bluetooth." There are a lot of more details on said site, including an overview video .

leJOS NXJ 0.9 is out

One and a half year after the last release, since mid of May a new version of leJOS NXJ  is out, the Java platform for LEGO® MINDSTORMS NXT. leJOS NXJ is one of the most complete development and runtime environments for advanced NXT robotic programs out there and is used not only by many NXT aficionados but also by a lot of schools and universities for teaching robotics and programming. In case you are into Object-Orientated Programming also for your NXT, it might be the platform of choice for you. The new release includes "preliminary Android OS support, a new icon-based menu system, updating the Java language to support such things as generics, and nanosecond support [..,] many new classes to support new sensors, as well as reworking the navigation API to accomodate different robot types, object detection, and path finding." Have a look at the web site . leJOS NXJ is Open Source and can be downloaded and used for free. Addendum: There's also a new version 0.9.0 o...

Enchanting for NXT - New release

Clinton Blackmore, developper of Enchanting, let me know that a new version of Enchanting has been released. "Enchanting is an easy-to-use graphical programming tool for LEGO MINDSTORMS NXT robots. It is based on Scratch from the MIT Media Lab, and powered by leJOS NXJ (Java for the NXT). Enchanting is free and open-source." One of the improvements is the installation process, which has been made much easier. Try it out, and send your feedback to Clinton so he can continue to improve Enchanting. More information and a download link are found on the project's website . Be sure to check out the new video about Enchanting:

LabVIEW for LEGO® MINDSTORMS NXT

National Instruments , the Texas-based manufacturer of the official programming environment for the NXT, based on NXT-G, has recently introduced LabVIEW for LEGO® MINDSTORMS . LabVIEW is the the company’s professional LabVIEW graphical system design software and well established in the industry for controlling machines and robots; the new version for LEGO® MINDSTORMS is focused on the educational sector and is thus meant to be used with the Education version of the NXT set: "Developed specifically for secondary school students to use with the LEGO Education robotics platform in classrooms or competitions, LabVIEW for LEGO MINDSTORMS is a teaching tool that helps students visually control and program MINDSTORMS NXT robots, while learning the same software used by scientists and engineers" as the company states. Consequently, the new programming platform well be sold exclusively  through LEGO Education and its authorised resellers.

LabVIEW 2010

In August, National Instruments , the provider of NXT-G, the LEGO®-official programming language for the NXT, has announced an new version of LabVIEW, the powerful robot programming platform that also is the base of NXT-G. According to NI, LabVIEW 2010 software (which also allows for programming the NXT) features "an improved back-end compiler that generates optimized machine code, increasing your application's run-time execution up to 20 percent. Additionally, LabVIEW 2010 tackles top support issues with streamlined software installation, Web-based hardware configuration, and in-product searching while incorporating features based on direct user feedback to make your programming easier." Read more on the news page of NI and have a look at the new webcast on LabVIEW 2010 .

"My Blocks" Tutorial Available

The standard NXT-G programming system for the NXT includes a feature called "My Blocks" that lets you create your own custom programming blocks. This is especially useful when developing complex programs, so that you can build up more complex actions from simpler actions that you can re-use. Although creating a simple My Block is not hard, it gets trickier to make more complex and more useful ones, and there are a number of practical concerns. For anyone wanting to learn more about My Blocks, I have posted this web tutorial , which starts at the basics and works up to more complex uses, including input and output parameters, simulating local variables, and various practical concerns such as testing and maintenance.

Multi-Bot for NXT 2.0

The Multi-Bot project for NXT 2.0 from nxtprograms.com is a robot vehicle that can take a number of different forms, including taking on several different modular attachments that can be used individually or combined in various ways, all using a single NXT 2.0 (8547) kit, or equivalent/replacement parts from other NXT/Technic kits. Multi-Bot was designed to be a flexible "teaching robot" of sorts for NXT 2.0, especially as an aid to learning NXT-G programming, as you can use it to do a lot of classic robot vehicle tasks and expand it to do your own tasks. Home users of NXT 2.0 might find it a good way to learn about the basics of robotic vehicles, and especially in conjunction with the CD (see below) as a good way to learn a lot of NXT-G programming. FLL teams that have the 2.0 retail kit (8547) or equivalent parts and software might also be interested in using it as an educational tool before the regular FLL season starts or at the beginning of the season. Building ins...

Microsoft Robotics Developer Studio completely free of charge now

Microsoft has announced that its Robotics Developer Studio , which allows for programming and (remotely) controlling also LEGO® MINDSTORMS NXT robots using C# or Visual Basic, will be completely free of charge from now on. In the past, there have been three different versions, two of which with commercial licenses liable to pay costs. These versions have been united to a single one now that can be downloaded and used without charge.

A step-by-step tutorial for setting up JCreator with leJOS NXJ

Being one of the developers of the leJOS NXJ Open Source project, a Java platform for the NXT, some people asked me for help in setting up JCreator for working with leJOS NXJ. JCreator is a light-weight Java IDE that comes in a free community edition as well as a commercial one; it's not my favorite one (I prefer Eclipse ), but I noticed teachers seem to like it for their robotics classes, considering the barrier to entry pretty low. So here it is: a step-by-step tutorial on how to set up JCreator with leJOS NXJ, allowing you to program your NXT with Java using JCreator.

Article on Geekdad on NXT programming options

geekdad has published a new article on the NXT where the author announces his plans to "explore its capabilities" by trying out some of the programming options out there for it. Though I do not understand why Mr. Olsen dismisses Java-based options from the start (he gives no reason for it), while I am considering for instance leJOS NXJ as one of the best, mature, structured and easy-to-use programming platforms for the NXT out there and am using it regularly, the article nevertheless provides a nice overview. I'm curious to hear about geekdad's further experiences with some of the options listed there.

The LEGO MINDSTORMS NXT 2.0 Discovery Book

The new NXT 2.0 has just been released, and there are multiple books coming out to cover the new robotics kit. You can find most of them by following this link I'm happy to announce that I'm also working on a book for the NXT 2.0: The LEGO MINDSTORMS NXT 2.0 Discovery Book . It is written for the new MINDSTORMS user. The book introduces programming from the basics onto “advanced” programming with data wires and advanced programming blocks. All of the new programming techniques are introduced while constantly building new robots. With this mix of building and programming, the user won’t easily get tired of playing with the NXT 2.0 kit. Furthermore, there are over 50 challenges in the book which encourage the reader to explore the newly discovered programming techniques by him/ herself. All of this is packed in a space-themed adventure story, as depicted in the book description below. The book is aimed at younger MINDSTORMS users, but even the experienced user will find some ch...

New NXT Book by Owen Bishop: First Look

Bishop's book is an impressive tutorial for NXT-G, geared to the intermediate or advanced user. Bishop covers sensors, variables, loops and switches, with special sections on mathematics (Sines, Cosines, Square Root, Factorials) and the compass sensor. All of the blocks and MyBlocks covered in the book are included on a DVD that comes with the book. The DVD also includes a list of book illustrations that are cross-referenced with the programs on the disk. For example, illustration "13.14" in the book refers to the "Maze Runner" program found on the disk. This cross-referenced list makes it easy to find a particular program discussed in a particular portion of the book. Some programs covered by Bishop: 1) "Housefly" Program: A fast-falling shadow on the light sensor (like that of a fly swatter) causes the robot to quickly move, in order to escape the "swat". 2) "Maze Learner" Program: The robot "learns" each section of a ma...

NXT Tutorial, Part II

Here is part two of Chad Cardwell's instructional video on the NXT. This video deals with NXT programming basics. Chad is getting a graduate degree in instructional technology and the quality of the video's content reflects this.

Programming the NXT with C++

leJOS OSEK , a C/C++ based Open Source programming and runtime platform for the NXT, has released version 2 now. From the project's web site: "LEJOS OSEK is an open source firmware for LEGO® MINDSTORMS NXT. LEJOS OSEK consists of I/O driver part of leJOS NXJ platform C/Assembly source code, TOPPERS OSEK Real-Time Operating System source code[...] and glue code to make them work together. LEJOS OSEK can provide: ANSI C/C++ programming environment[...] leJOS NXJ I/O driver based C API for NXT Sensors, Motor, and other devices leJOS NXJ I/O driver based C++ API for NXT Sensors and Motor (includes many third party sensors) (TOPPERS) OSEK provided real-time multi tasking features proven in automotive industry fast execution and less memory consumption[...] NXT BIOS enables LEJOS OSEK application uploaded into Flash (max. 224Kbytes) or SRAM (max. 64Kbytes) Many examples (include NXTway-GS and NXT GT...)" If you are into C or C++, you might want to give this interesting pro...

NXT-G Online: A Virtual Programming Teaching Environment

When I was in a LEGO Education Center in Shanghai, I met a true LEGO MINDSTORMS enthusiast, Johnson - it instant friendship. He showed some of the projects he developed and one really caught my attention: NXT-G Online. This software helps teach people how to program in NXT-G through a virtual programming teaching environment. In other words, you have a mission to solve, then you write your NXT-G code then download it to a virtual NXT robot (that is what really caught my attention), which runs the program and accomplishes the mission. It is also VERY easy to use. This software is also a great solution for schools/groups who cannot afford NXT's for everyone, but want them to all have an equal opportunity to program an NXT to really do some tasks. Here is a video showing NXT-G Online: To help better understand what is going on in the video, here is the sequence of chronologically events: - A challenge was selected - a video that came up introduced the challenge. - The simulated NXT-...

POLL TIME! - What language do you program your NXT with? And Why?

Several of the contributors have been going round on the merits of various languages. And we all have our favorites. The question I have... is what is YOUR favorite programming language for the NXT? And why? NXT-G RoboLab pbLUA RobotC leJOS NXJ ??? Please post your favorite language (and why you use it) as a comment. I'll compile up some statistics at some point in the future, and publish them here.