Log in

View Full Version : Programming Minibot


Team 2016
09-01-2011, 16:23
Is there any language we have to use to program the minibot?:eek:

Dustin Shadbolt
09-01-2011, 16:35
I do believe reading that you could use LabView or maybe easyC? Something like that. I'm kind of concerned with this also because I have never programmed outside of FRC and general programming.

2829ron
09-01-2011, 16:36
Is there any language we have to use to program the minibot?:eek:
It appears that if you use the NXT controller than you will be using a simplified version of Labview. Really simplified.

David
Team #2829

PSHRobotics
09-01-2011, 18:26
In regards to using LabView to program, this thread (http://www.chiefdelphi.com/forums/showthread.php?t=88378) in the LabView section has some pretty decent discussion.

My post in that thread discusses how you could accomplish programming in LabView for FRC and FTC on the same computer:
How would you manage to have the minibot continue up the pole once it is disconnected from the main robot?

Also, LabView is pretty popular for FTC. The FTC section on CD (http://www.chiefdelphi.com/forums/forumdisplay.php?f=146) has several teams that use it, including mine.
Now what I'm worried about is access to the libraries for FTC and FRC at the same time. My team has tried to install (last season, not this season) FRC's LabView directly over the version for FTC. The install always failed over three labtops. We had to completely remove everything related to FTC's LabView before installing FRC's LabView. Hopefully this will not be too big of a problem because an "FTC Toolkit" is released to use with LabView which should contain all the libraries for FTC. You can get the Toolkit off of USFirst.org's FTC Programming (http://usfirst.org/roboticsprograms/ftc/content.aspx?id=6650) section in the "LabView Resources" link." Tomorrow, I will try installing the ToolKit over this FRC's LabView and then try to compile our most recent FTC code. I will post any problems or successes here.
Note: kamocat has recently posted a response that for this year he has had no trouble installing FRC LabVIEW on laptops with the FTC LabVIEW.

JamesBrown
09-01-2011, 19:05
It appears that if you use the NXT controller than you will be using a simplified version of Labview. Really simplified.

David
Team #2829

You should be able to use any language you can use for FTC (Labview and RobotC) I believe.

Bill_B
09-01-2011, 19:13
I think that is why we were advised to make the acquaintance of FLL or FTC teams. They are familiar with programming the NXT for their respective seasons. Most of the FLL teams are done for the year, but I think FTC are still active. FLL teams are also harder to find.:)

There has been speculation about restrictions on programming language for the NXT. I will eventually scour the rules to find it. It's only needed after a climber minibot is built that needs an NXT.

vinnie
09-01-2011, 23:05
My team was thinking that we were going to use just a simple PIC. Does anyone know if that is against the rules because it isn't used by FTC teams?

Bill_B
09-01-2011, 23:09
My team was thinking that we were going to use just a simple PIC. Does anyone know if that is against the rules because it isn't used by FTC teams?
::rtm:: PIC not included in allowable MINBOT parts. AFAIK ::rtm::

A Tech
11-01-2011, 00:46
I LOVE THE NXT!!! :o i have one myself. so how exactly do we program it?

bcootner
11-01-2011, 16:33
Can't we just use the FLL NXT-G Mindstorm program that comes with the device? It's a really simple version of Labview

Tiny Tim
11-01-2011, 17:04
There has been no word that I know of that says you have to use a certain program though I think if you use LabView it will be easier.

Al Skierkiewicz
11-01-2011, 17:08
There are a variety of languages that can be used for the NXT. It is highly recommended you find an FTC team for help. There is a "Find teams in my area" on the First website to help in your search.

cooldude8181
11-01-2011, 17:24
Why would you program the Mini-bot?

Everyone knows that code just adds excessive weight.

PAR_WIG1350
11-01-2011, 18:40
Why would you program the Mini-bot?

Everyone knows that code just adds excessive weight.

I don't think the scales are accurate enough for a few million electrons to make a difference. Also, The FTC languages are NXT-G, Labview, and RobotC.

jshkish
11-01-2011, 19:12
OK..... first the programming language does not matter.... but team 931 my team is not going to program it we are gonna use household switches..

ssmith2
12-01-2011, 22:36
So I see that there are multiple languages you can program the minibot in which is fine and I think we can figure that out. Our team's issue is that we don't have a nearby FLL or FTC team and I don't know where to get the "brick" and other other components that are used to build the minibot. Are those just things we can buy on andymark or something? Please forgive my ignorance and any pointers in the right direction will be appreciated.

Team 1737

davidthefat
12-01-2011, 22:43
http://www.legoeducation.us/store/default.aspx?CategoryID=187&by=9&c=1

rEgonicS
12-01-2011, 22:49
Are we allowed to use a microcontroller such as a Basic Stamp or an Arduino?

Guppy
12-01-2011, 22:49
... but team 931 my team is not going to program it we are gonna use household switches..
Wouldn't that interfere with rule <R03>?
Custom circuits and COTS electronics are expressly prohibited if they:
A. Interfere with the operation of other ROBOTS.
B. Directly affect any output devices on the ROBOT.
ROBOT is defined as
ROBOT – ...ROBOT includes both the HOSTBOT and the MINIBOT.
The motors are output devices. Or is this a misinterpretation of the rules? ::rtm::

davidthefat
12-01-2011, 22:51
Are we allowed to use a microcontroller such as a Basic Stamp or an Arduino?

No, it has to be the one listed on the rules.

Robototes2412
12-01-2011, 23:24
my minibot design is a flat circuit board

it has a switch that kicks on the motors when its activated, and the motors die once it hits the top.

I'll scan my drawing asap

eugenebrooks
12-01-2011, 23:38
Motors die as in magic white smoke?
That would be expensive... :-)

Dustin Shadbolt
13-01-2011, 00:00
Motors die as in magic white smoke?
That would be expensive... :-)

lol!

Al Skierkiewicz
13-01-2011, 07:28
The minibot rules do not require a controller. If you intend to use one, it must be the NXT only. The definition of ROBOT & MINIBOT differ. Do not be confused.

dag0620
13-01-2011, 08:19
Here's a question I have.

I was pretty familiar with the NXT Brick in FTC and that it could be programmed in LabView.

However those of us on our team are having this debate. I know FTC has there own FMS and the bricks can be tied into them. However, will the Mini-bots be tied into the FMS for us somehow? The manual seemed to be vague on that, not mentioning on it either way, and I didn't see anything in the Control System manuals.

Al Skierkiewicz
13-01-2011, 08:33
Dave,
The mini is a completely autonomous vehicle. There is no external control either from the FMS or from a driver station.

sloteera
13-01-2011, 08:50
So... can I connect the battery directly to the motor without using that HiTechinic Driver...

That's right?

dag0620
13-01-2011, 08:51
Thanks Al!

This then brings up the point theres going to need to be mechanisms to get the robot to move right on time, I'm sensing a big problem that the engineers and programmers on teams will be trying to tackle.

pschre
13-01-2011, 09:45
My team is looking to use an NXT brick, and possibly program with NXT-G (I am not our FRC programming mentor but I am the school's FLL coach so my only experience is with NXT-G). However, our school's FLL team advanced to city champs (same weekend as the NYC Regional) so we won't use their bricks. For us, an FLL team is much easier to find than an FTC team. One of our alumni may lend us his, but I believe his is imaged for one of the other languages.

But since minibot weight stands to make all the difference, minibots that can go without an NXT brick will, in many cases, be very hard for minibots that do have that extra weight to beat.

Jack Jones
13-01-2011, 10:24
So... can I connect the battery directly to the motor without using that HiTechinic Driver...

That's right?

IMO - That remains to be ruled upon. If MINIBOT is a subset of ROBOT, then it appears that it must conform to the ROBOT rules, which say that custom circuits (eg. a switch) can not directly supply power to a motor. OTOH, if the MINIBOT is a "robot" (which is hard to define - but I know one when I see one :) ) then some other intrepretation based solely on the manual section 4.3.14 MINIBOT may apply. :confused:

AlftanSr
13-01-2011, 11:39
Why do you need to program the minibot? You're allowed a light switch!

Ethan E
13-01-2011, 12:34
I think the GDC needs to be a little more careful with ROBOT vs. HOSTBOT. <R45> says that only CIM motors and the BaneBots motors are allowed on the ROBOTS. But since the MINIBOT is part of the ROBOT (ROBOT = HOSTBOT + MINIBOT), and <R92> doesn't say that either of these can be used on the MINIBOT, NO motors are legal for the MINIBOT. :ahh: Of course, I don't think anyone is going to use <R45> on the minibots, but we shouldn't have to take a loose interpretation of the rules.

In the same vein, <R03-B> prohibits custom circuits and COTS electronics from affecting any outputs on the ROBOT. But the MINIBOT is part of the ROBOT (can you see where this is going?) and as the NXT controller isn't in the KOP, it's a COTS electronics item. And a limit switch wired to the motors would be a custom circuit! I can't figure out any way to control a completely autonomous MINIBOT legally!

Ok, I'll stop being such a smart-aleck now. :D

On a more serious note, obviously an exception will be made for the motors, and we'll be able to control the MINIBOT with an NXT controller, but will we be able to control the MINIBOT with a custom circuit and NO NXT controller?

treffk
13-01-2011, 18:22
From what I'm reading on FTC I'm seeing you can only program the FTC NXT brick with LabView or RobotC. What my question is, can you interchangeably go back in forth between the NXT-G and RobotC on the NXT brick as long as you have both firmwares?

Greg McKaskle
13-01-2011, 20:02
LabVIEW and NXT-G use the LEGO firmware. RobotC uses a specific firmware image.

You can change the firmware pretty much as often as you like with no problems. Use the correct firmware and tool combination.

Greg McKaskle

prattster1995
13-01-2011, 20:16
sorry unrelated question but how do you start a forum or thread on chief delphi?

byteit101
14-01-2011, 17:33
you can even use NXJ leJOS (http://lejos.sourceforge.net/) (Java), which I've found is fairly nice (though I have not played with it in forever :) )

Al Skierkiewicz
20-01-2011, 07:59
I think the GDC needs to be a little more careful with ROBOT vs. HOSTBOT. <R45> says that only CIM motors and the BaneBots motors are allowed on the ROBOTS. But since the MINIBOT is part of the ROBOT (ROBOT = HOSTBOT + MINIBOT), and <R92> doesn't say that either of these can be used on the MINIBOT, NO motors are legal for the MINIBOT.
and as the NXT controller isn't in the KOP, it's a COTS electronics item. And a limit switch wired to the motors would be a custom circuit! I can't figure out any way to control a completely autonomous MINIBOT legally!

Ethan by now I think you have figured out these dilemmas but as many teams seem to be struggling with this apparent discrepancy, here is a reminder. 4.3.14 MINIBOT modifies the rules as they pertain to the minibot only. That is this section specifies the battery that is used, the materials that are allowed and the modification that limit switches and light switches may be used to effect the minibot motors directly or through an NXT brick. Some may have also picked up on the NXT brick being a COTS computing device. When inspecting minibots, inspectors will use this section as modified throughout the season in Team Updates, as the basis for their inspection. There will be an separate inspection sheet and process for minibots.

cilginbilgin
26-01-2011, 11:53
can we use "lego mindstorms nxt" for progromming the minibot (we do not know much thing about ftc) and how can we use "tetrix dc drive motor" with nxt --- is it similar with "nxt interactive servo motor".....

Al Skierkiewicz
26-01-2011, 11:57
C,
You may use NXT but you are not required to use NXT. If you decide to use NXT, you must use the FTC motor controller to drive the motor(s).

cilginbilgin
26-01-2011, 12:05
can we use "lego mindstorms nxt" for programming the minibot ---- how can we use tetrix dc drive motor with nxt--- is it similar with nxt interactive servo motor...

Techhexium
26-01-2011, 19:10
Here is how you configure a TETRIX testbed so you can see what part is connected to another.

Eagleeyedan
26-01-2011, 19:31
I'd think you'd just use the NXT-G or Labview. Robot-C works on it and so does Java though. We are just not using the NXT on our minibot. Adds too much wieght wich slows it down.

Bill_B
26-01-2011, 20:21
Here is how you configure a TETRIX testbed so you can see what part is connected to another.
Thanks. I took the liberty of adding a few annotations to your picture.

PAR_WIG1350
26-01-2011, 23:18
can we use "lego mindstorms nxt" for programming the minibot ---- how can we use tetrix dc drive motor with nxt--- is it similar with nxt interactive servo motor...

Yes, "lego mindstorms nxt" is the name of the NXT-G integrated development environment. The dc drive motors are not very similar to the interactive servo motors at all (in terms of control) and cannot be programed with the same NXT-g programming block. The blocks you are looking for can be found here (http://www.tetrixrobotics.com/MINDSTORMS_Controlled/Downloads/default.aspx?aid=84).

Techhexium
27-01-2011, 11:04
Yes, "lego mindstorms nxt" is the name of the NXT-G integrated development environment. The dc drive motors are not very similar to the interactive servo motors at all (in terms of control) and cannot be programed with the same NXT-g programming block. The blocks you are looking for can be found here (http://www.tetrixrobotics.com/MINDSTORMS_Controlled/Downloads/default.aspx?aid=84).
Lego Mindstorms NXT is the robotics kit made by Lego, and NXT-G is the name of the IDE. RobotC may also be used if you're more familiar with text-based programming or C++

Christian Z
28-01-2011, 23:18
well our team found robot c to be a good language when programing the minibot. The main reason was because when we did ftc we found some delay with Labveiw. Labveiw should work just fine though if you dont know how to program in robot c.

BLAQmx
07-02-2011, 13:04
For teams who are interested in obtaining a copy of LabVIEW Education Edition to program an NXT for their mini-bot, please contact National Instruments FRC phone support (866-511-6285 from 1 p.m. to 7 p.m. Central Time) and request a copy from a support engineer. National Instruments will then ship your team a copy of LabVIEW Education Edition. Teams will be allowed to use the same serial number as provided to FTC teams to active their software.

Thanks,
Mark Black
National Instruments
LabVIEW R&D

swwrobotics
16-02-2011, 06:33
Can someone post a picture of how to wire your minibot so that no programming is needed? Our team is planning on using switches to turn our minibot on, but we keep blowing fuses in the battery. We're having trouble with this, so the help would be greatly appreciated!:D

Techhexium
17-02-2011, 02:48
Can someone post a picture of how to wire your minibot so that no programming is needed? Our team is planning on using switches to turn our minibot on, but we keep blowing fuses in the battery. We're having trouble with this, so the help would be greatly appreciated!:D
(Emphasis Mine)

To prevent fuses from blowing up you should either use 10A fuses or fix your wiring, meaning making sure there is no metal wiring that isn't underneath the wire sheath being exposed. My FTC has blown the fuses in our wiring but since we replaced them and fixed our wiring it hasn't happened again.

Al Skierkiewicz
17-02-2011, 07:56
Tech,
Try removing your battery, connecting an ohmmeter to the battery connector on the robot and activating switches. If during the actuation your reading suddenly drops from low to very low, you have a switch that is shorting out the battery and blowing the fuse.

Techhexium
18-02-2011, 19:52
Thanks for the suggestion Al, but my FTC team (I'm not in FRC) doesn't need an ohmmeter/multimeter, and I already posted that the the batteries are fine now (it happened a few months ago). I'm certain the power switch is fine, the main problem was the end of the wires that were connected to the HiTechnic Controllers were exposed(no sheath protecting it), my team just removed the excess wiring and the batteries now work fine.

NullEntity
22-02-2011, 16:52
Why would you program the Mini-bot?

Everyone knows that code just adds excessive weight.

I remember an argument about that. The argument/math came out to the more code you have the less it weighs.

Team 288
23-02-2011, 10:15
Why program your Mini Bot at all? You will just be adding the weight of the NXT to the Mini Bot. Instead use the two light switches to turn the Mini Bot on and off again and leave the NXT at home.

davidthefat
23-02-2011, 10:41
Why program your Mini Bot at all? You will just be adding the weight of the NXT to the Mini Bot. Instead use the two light switches to turn the Mini Bot on and off again and leave the NXT at home.

That's the same principle we used.

JohnFogarty
24-02-2011, 12:48
This tread makes me chuckle a bit. Ok there are 2 languages really that you should use. either the LabVIEW with a FTC toolkit. or RobotC. Those who like C or Java or even LabVIEW programmers should be able to handle RobotC. It's really easy. say for example all you use are motors and a touch sensor. the code for that is this easy. All you have to use is a built in motors and sensors configuration program which you tell it the location of all of your hardware relative to the NXT. You won't have to use any specific templates due to the fact that the minibot is purely autonomous no outside control needed. for most robot's it's really this simple. Now from experience we aren't using the NXT system we are doing everything in hardware. that's why we have a 2.8 second minibot. sooo go at it as you wish.

wait1Msec(1200000) \\<--that's two minutes of wait time before enabling the while loop below so you wont have random wheels spinning the entire time.


while(nTouchsenor=0)
{
motor[motorD]=100;
motor[motorG]=100:
}
motor[motorD]=0; //or a negative number to drive it back down.
motor[motorG]=0;

sutivnn
01-03-2011, 21:14
sorry unrelated question but how do you start a forum or thread on chief delphi?

oceanblack
02-03-2011, 16:04
yo can actually get a NXT brick and use a program called NXT-G (free download form internet