Version 112 (modified by behrens, 2 years ago)

Projects

This web page shows LEGO Mindstorms NXT projects which are using the RWTH - Mindstorms NXT Toolbox for MATLAB. If you are using the toolbox in your own private or education project please feel free to send an email to mindstorms(at)lfb.rwth-aachen.de to have your project added to this site.

University and education


MATLAB meets LEGO Mindstorms:
First Semster Student Laboratory


The project which started it all...
RWTH Aachen University, Germany
Week 1 LEGO Exercise University of Cambridge, UK
Freshman Engineering Robotics Project
- Mindstorms Meets MATLAB -
College of Egineering and Science, Clemson University, USA

First Semester Project in Cybernetics Otto-von-Guericke University Magdeburg, Germany
Fundamentals of Engineering Design
Course for Biomedical Engineers
New Jersey Institute of Technology, USA
Final Project - Robotics:
Algorithms and Control (ECE 452)
University of Illinois at Chicago, USA
Final Project in Scientific Computing
Computer Science 121
Washington and Lee University at Lexington, Virginia, USA
Robotics with MATLAB and LEGO NXT Villanova University, Villanova, PA, USA
Project in Robotics 2:
Multi-Agent Systems
Radboud University Nijmegen, Netherlands
MATLAB Student Biomechanics Projects Friedrich Schiller University of Jena, Germany
Projects in Automatic Control (FRT090) Lund University, Sweden
Introduction to Control Systems University of Ottawa, Canada
Student Workshop (Summer Term 2008) RWTH Aachen University, Germany
Thesis, papers, and conferences
A Matlab-based Remote Lab
for Multi-Robot Experiments
Marco Casini, Andrea Garulli, Antonio Giannitrapani, Antonio Vicino, Università di Siena, Italy
Various project announcements for Mindstorms and MATLAB University of Applied Sciences Oldenburg/Ostfriesland/Wilhelmshaven, Germany
IP/BA-Thesis:
MATLAB Evaluation Environment for LEGO Mindstorms
Carl von Ossietzky University Oldenburg, Germany
Particle Filter - Monte Carlo Localization Algorithm Ricardo Oliveira, IST University Portugal
Path Following Robot Unknown University
Final Year Project:
Technical Lego Robot Entertainment Device
Christiane Ischebeck, Coventry University
Zukunft Ingenieurwissenschaften - Zukunft Deutschland Proceedings of the 4ING-Conference and the first plenary meeting of the 4ING-faculty, Springer
Tutorial: Weather forecasts on your NXT Linus Atorf, RWTH Aachen University
Personal robots
Sudoku Solving Robot Vital van Reeven
MATLAB Bluetooth Router Daniele Benedettelli
Boat Robot:
Modelos, Control y Sistema de Visión
Omar Sánchez
Draw Robot Unknown
Other
Hybrid MotorControl Technology

Documented and usable for other frameworks
Linus Atorf & the toolbox team
NXC Profiler

A spin-off during toolbox development
Linus Atorf

Fundamentals of Engineering Design Course for Biomedical Engineers

A Biomedical Engineers Course for students at  NJIT - New Jersey's Science & Technology University.

  • Three-hour semester long course that is offered in the Fall and Spring semesters.
  • Labs consists of 60 students with 15 to 20 groups, teams of 3-4 people.
  • Creative student projects are build to solve robotic surgery tasks with RWTH Mindstorms NXT Toolbox and the modeling software Pro-engineering.
    • e.g. vasectomy of a spaghetti noodle, shoulder transplant of a Barbie doll, Vascular bypass surgery of a strawberry, …
  • Course teaching: Anish Parameswaran, Anika Khatri, Dr. Brunio Mantialla, and Dr. Judith Redling (Biomedical Engineering Department of NJIT)

Final Project Robotics: Gesture Controlled Robot

Final Project - Robotics: Algorithms and Control (ECE 452):  Gesture Controlled Robot

  • Built by RAJAT MAHAJAN, Department of Electrical and Computer Engineering,  University of Illinois at Chicago
  • Robot controlled by the RWTH - Mindstorms NXT Toolbox from a Laptop (connected via USB)
  • WiiMote (wireless Bluetooth remote with acceleration sensor of the Nintendo Wii system) connected to MATLAB using  this library
  • Gesture recognition using a neural network
  •  Sourcode and  demo videos



Robotics with MATLAB and LEGO NXT

Student laboratory at  Villanova University, Villanova, PA, USA

Error: Macro Image(Villanova_edu_small.png) failed
Attachment 'wiki:Projects: Villanova_edu_small.png' does not exist.
Objective. Teams of students will design, construct, and program (using MATLAB) LEGO-based robots in order to solve a variety of engineering problems. This entails learning to integrate analysis and design concepts from physics and mathematics with the fundamentals of programming to implement viable project designs. The projects may include catapult trajectory aiming, racing trajectory-following robots, robotic basketball, robotic art, digital scanner, etc.

Course Structure. Initially, each team will consist of two students providing an opportunity for each student to get familiar with the LEGO Mindstorms kit, review basic principles from mathematics and physics and learn the fundamentals of MATLAB programming. In the latter portion of the project sequence, students will break into teams of four to complete a capstone project. Capstone projects may be chosen from guidelines provided by instructors or student groups may submit their own capstone project design concept for instructor's approval. Homeworks and quizzes are an integral course component.

Multi-disciplinary content. There are several multidisciplinary aspects emphasized in these projects. Specially, MATLAB programming is needed in all majors and the projects will reinforce material taught in the core course. System analysis and control spans disciplines which include mechanical, electrical, chemical, and civil engineering. The use of sensors and actuators is essential for system implementation in all engineering disciplines.

For more information: * Dr. Stephen Konyk, stephen.konyk@… * Dr. Sergey Nersesov, sergey.nersesov@… *  http://mindstorms.lfb.rwth-aachen.de/

Computer Science 121 : Scientific Computing

Final Project

Engineering course  Scientific Computing from  Washington and Lee University, Lexington, Virginia

The last two lab periods of the course (25 March, 01 April) will be devoted to individual final programming projects of your own choosing. The goal is to write one or more programs to solve an interesting problem in your field of study. Proposals for these projects will be due the previous week. If you decide not to do a final project, there will be a default project you can do instead, most likely a robotics project using the new RWTH - Mindstorms NXT Toolbox for MATLAB.


Project in Robotics 2: Multi-Agent Systems

Class project

Course  BKI 242: Robotica 2 from  Radboud University Nijmegen
Quoted from the  project description:

General
The goal of the project is to get hands-on experience with the development of multi-agent systems. In groups of 3 or 4 students a multi-agent task has to be selected, designed, and implemented. Each group has to write a project proposal describing their choices (see below). At the end of the course each group gives a presentation and a demo of their multi-agent system and have to submit a final report.

Software
For the practical you'll have to make a choice about the development environment. Several choices are possible.

  • NXC: This is the most basic option. For this you will need to use BricxCC. This is already installed on the university computers, but if you want to run BricxCC on a laptop, you will need to install and setup BricxCC. Here are some detailed steps to get you started and some pointers on how to use bluetooth.
  • Matlab: This offers a more sophisticated environment for controlling your robots. Visit the  RWTH page for support. Note that you'll need a laptop on which Matlab is installed.
  • JAVA: […]

A Matlab-based Remote Lab for Multi-Robot Experiments

A paper about a remote lab using the RWTH - Mindstorms NXT Toolbox, written by Marco Casini, Andrea Garulli, Antonio Giannitrapani, and Antonio Vicino.

Abstract: Experimental validation is often crucial for establishing the effectiveness and robustness of algorithms for mobile robots. Unfortunately, it is generally difficult to let students use experimental setups, due to expensive hardware, complexity of usage and, not last, safety aspects. Often, experiments require the supervision of a tutor, and have to be carried out during the laboratory opening time. A possible way to overcome such limitations is to resort to remote labs. In this paper, a remote lab for controlling a team of mobile robots is presented. It is based on the Matlab environment and the mobile robots are built by using the LEGO Mindstorms NXT technology. Despite its low cost, thanks to its open architecture the proposed setup is versatile enough to be used in several kinds of experiments, ranging from single-robot to multi-robot systems, from centralized to decentralized control schemes. Users may connect to the remote lab and test their own algorithms in an easy way, by simply designing a Matlab function, without spending time on hardware aspects. A user interface allows them to observe the running experiment, and to download experimental data for offline analysis.


Various project announcements for Mindstorms and MATLAB

Offered by  Prof. Dr. rer. nat. Rüdiger Götting at  Fachhochschule Oldenburg/Ostfriesland/Wilhelmshaven

Selected announcements (see  full list, German):



IP/BA-Thesis : MATLAB Evaluation Environment for LEGO Mindstorms

Automation and Measurement Technologies, Ansprechpartner: Dipl.-Inform. Melvin Isken

Aufgabenbeschreibung: (2009-08-20, German)

In dieser Arbeit soll eine Evaluationsumgebung für die Programmierung von Lego Mindstorms mit Hilfe von Matlab entwickelt werden. Durch die Ansteuerung der Mindstorms via Matlab soll eine bessere Auswertung der Programme ermöglicht werden. So soll beispielsweise die Winkelstellung der Motoren live grafisch ausgegeben werden können. Zur Programmierung steht bereits ein Matlab-Toolkit zur Verfügung, so dass keine Low-Level Programmierung erfolgen muss.

Error: Macro Image(BAArbeitRobotergrafik.jpg, height=400, nolink) failed
Attachment 'wiki:Projects: BAArbeitRobotergrafik.jpg' does not exist.

 Thesis description

 Overview of study research and thesis topics (Diploma, IP, Bachelor, Master), Automation and Measurement Technologies, Carl von Ossietzky University Oldenburg, Germany


MATLAB Student Biomechanics Projects

 Locomotion Laboratory - Institute of Sport Science

 MATLAB Introduction and Biomechanics Project Page (Lauflabor)

List of students projects February 2009 (using RWTH - Mindstorms NXT Toolbox)

Friedrich Schiller University of Jena, Germany


FRT090 Projects in Automatic Control

Department of Automatic Control, Lund Institute of Technology

Course Program 2009

This is an advanced project course that gives 7.5 credits. The course is given during the second study period of the spring term.

Projects

The following projects are suggested for this years course:

  • Project 1: Lego Mindstorms NXT (Matlab/NXC) In this project, the task is to design and build a balancing robot and to design and implement a stabilizing control scheme. The project includes Lego, design, selection of sensors, modeling, identification, controller design and implementation. Matlab/Simulink? in combination with RWTH Mindstorms NXT Toolbox for Matlab is used for prototyping and data acquisition. The control system is implemented in fix-point arithmetic using a dialect of C: NXC for Lego Mindstorms NXT..
  • Project 2: Lego Mindstorms NXT NXTway (Modelica/Dymola?)

Course coordinator: Johan Åkesson

* Project link  http://www.control.lth.se/course/FRT090/

Lund University, Sweden


Introduction to Control Systems

Riadh Habash, PhD, P.Eng -School of Information Technology and Engineering (SITE), University of Ottawa



ELG3150: Project (Matlab and Lego Mindstorms)

Part 1: 15 marks

Build LEGO Mindstorms NXT Machine or Robot

 

Apply the skills you gained during the lectures and exercises in Matlab to control flows and behavior patterns of the machine/robot.

For wireless communication between computers and the LEGO Mindstorms NXT machine/robot, Bluetooth interface may be used. 

Learn how to operate the Mindstorms NXT motors and sensors from within MATLAB during several experiments using the specially developed

RWTH - Mindstorms NXT Toolbox.

To be completed by Monday: July 7, 2008

Part 2: 15 Marks

A PID Controller Implemented with Lego Mindstorms

 

In this part of the project design a PID controller using a Lego product

(assume a transfer function for the Lego product or Lego vehicle).

The objective of this project is to model (use MATLAB) a robotic device capable of maintaining its
position relative to another object (cruise control).

Try to produce the optimum transient behaviour.

Is PID controller implemented in Lego Mindstorm NXT? Investigate this matter.

Requirement:

MATLAB demonstration (Monday: July 14, 2008): 10 marks

5-page report (to be submitted on the day of the final exam): 5 marks


Particle Filter - Monte Carlo Localization Algorithm

Ricardo Oliveira, IST University Portugal

This is a Monte Carlo Localization demonstration using a LEGO Mindstorms NXT Robot. It uses an IR remote control to control the odometry and the sensors are an ultrasonic and a compass sensor from HiTechnic?. The robot runs an embedded NXC program to generate the odometry motion model, based on motors tachometers, retrieving the information to a laptop through bluetooth. The filtering step with the sensor model is processed in Matlab and uses RWTH toolbox to get the odometry. The map dimension is 122 x 160cm. The algorithm estimates x, y and theta and reaches a fairly good stability with about 150 particles.


Path Following Robot

This is a project of a course I took at the university, using RWTH toolbox. Once the robot detects a line, it evaluates the line angle and go through a parallel to the line.


Final Year Project - "Technical Lego Robot Entertainment Device"

In her Final Year Project "Technical Lego Robot Entertainment Device", Christiane Ischebeck developed a LEGO MINDSTORMS NXT entertainment robot and evaluated the usage of two different programming software environments (NXT-G, and RWTH - Mindstorms NXT Toolbox for MATLAB) for her application. The project was submitted in partial fulfilment of the requirements for the Degree of Bachelor of European Engineering and was supervised by the Faculty of Engineering and Computing, Coventry University, United Kingdom.

Abstract

This report is about LEGO MINDSTORMS NXT. LEGO MINDSTORMS is a LEGO set to build robots, vehicles or animals. The project concentrates on a LEGO MINDSTORMS robot, which should dance, say some words and play a melody. At the beginning, a vehicle was built to learn how to use the MINDSTORMS software. After learning the main components of the software, a robot was built. The next step was the programming of the robot with the LEGO software to make the robot walk, move its arms and head, show a picture (for example a heart) on its display and play some sounds or speak some words. A USB-cable was used for data transfer. Finally, this robot is programmed with MATLAB and a toolbox of RWTH Aachen, a german university. For this tool, a Bluetooth connection is used instead of the USB-cable. This report describes the building, programming and the difficulties with the NXT software and MATLAB in conjunction with the toolbox. The biggest problems caused are the legs of the robot for walking and the Bluetooth connection. It is very difficult to make the robot walk properly with only one motor for each leg. Another problem is the Bluetooth connection between the robot and the PC because of the time to get the connection working. Summarised it can be said that it is not so easy to make the robot walk. With only two motors, the robot can move but it shuffles and does not lift up its feet. The conclusion of this project is that the LEGO software is very easy to learn and program, but with a more complex program such as MATLAB and an adequate toolbox there are more possibilities in programming the robot.

- 23th April 2008 -


Zukunft Ingenieurwissenschaften - Zukunft Deutschland

Beiträge einer 4ING-Fachkonferenz und der ersten Gemeinsamen Plenarversammlung der 4ING-Fakultätentage … an der RWTH Aachen (German Edition) (Hardcover)

Proceedings of the 4ING-Conference and the first plenary meeting of the 4ING-faculty.

The laboratory MATLAB meets LEGO Mindstorms for first semester students was presented and demonstrated (see cover page of the conference proceeding) during the poster session of the conference.

Product details: Springer Online Link
Zukunft Ingenieurwissenschaften – Zukunft Deutschland
Beiträge einer 4ING-Fachkonferenz und der ersten Gemeinsamen Plenarversammlung der 4ING-Fakultätentage am 14. und 15.07.2008 an der RWTH Aachen
Publisher: Springer Berlin Heidelberg
DOI: 10.1007/978-3-540-89609-8
Copyright: 2009
ISBN: 978-3-540-89608-1 (Print) 978-3-540-89609-8 (Online)
Subject Collection: Engineering
SpringerLink Date: Thursday, October 30, 2008

Boat Robot - Modelos, Control y Sistema de Visión

A NXT boat robot is controlled via GPS navigation and MATLAB using the RWTH - Mindstorms NXT Toolbox. Visit  http://omarsanchez.net/robotboat.aspx for more information.
http://omarsanchez.net/images/boat_3.jpg http://omarsanchez.net/images/boat_1.jpg http://omarsanchez.net/images/boat_mrs.jpg

Code extract of the control algorithm.

%% Apaga motor
clear all
close all

%% Establece conexión Bluetooth
handle = COM_OpenNXT('bluetooth.ini', 'check');
COM_SetDefaultNXT(handle);

%% Enciende sensor de luz
OpenLight(SENSOR_1, 'ACTIVE');
Ya_activado=1
 
tecla=1; % Condiciones iniciales (<>32)

while tecla~=32 %Para encuesta con espacio en blanco
tecla=getkey;
  switch tecla
    case 13 % Enter (Enciende motor)
      boteon;
    case 8 %backspace (Apaga motor) 
      boteoff;
    case 29 % flecha derecha (Doblar derecha)
      botedirder;
      Active_derecha=1
    case 28 % flecha izquierda
      botedirizq;
      Active_izquierda=1
    %otherwise
    % tecla=1;
    end
end 

%% Apaga sensor de luz
CloseSensor(SENSOR_1);

%% Close NXT connection
COM_CloseNXT(handle);

Sudoku solving robot

Solving 200 Sudokus in 30 minutes is the impressing tagline of "SudokuKiller", a robot built by Vital van Reeven who has already contributed to the RWTH - Mindstorms NXT Toolbox before (with his ideas about USB communication). Using a webcam, an NXT, some Power Functions motors, MATLAB, and our toolbox, he managed to build a machine that can automatically scan a Sudoku, solve it, and turn the page for the next puzzle. The YouTube video can be seen below or  here.


Draw Robot

This is a robot I constructed and programmed in MATLAB with the toolbox made at RWTH Aachen. The program is really raw, the positioning tends to oscillate and the trajectory has to be inserted manually by defining the functions of X-, Y- and Z-axis (coordinate transformation is automated).


MATLAB Bluetooth Router

Daniele Benedettelli designed a MATLAB Bluetooth Router, which supplies an OS independent environment for an automatically Bluetooth network setup with a master and three slave NXTs. Using our RWTH - Mindstorms NXT Toolbox for MATLAB and NXC programs, his implementation provides a useful library for NXT Bluetooth communication.

For more details please visit  http://robotics.benedettelli.com/BT_router.htm

Student Workshop (Summer Term 2008)

(weekly course, Thursdays 3.30 pm - 5.30 pm at  Institute of Imaging & Computer Vision)

According to the freshman student project MATLAB meets LEGO Mindstorms the  Institute of Imaging & Computer Vision established a weekly student workshop, where volunteer students can work on further feature development and extension of the RWTH - Mindstorms NXT Toolbox for MATLAB and create new robotics and applications. In this course the students further their knowledge about MATLAB and LEGO Mindstorms robots and become the next developers of this project.

Student Workshop?

Attachments