C++ and Robotics the relations?

G

Guest

Hello. I am a n00b in the field of programming. I studied mIRC, html,
max script, and very little c++ logistics. I was wondering if what
specific areas of c++ might help for robotics. If you have heard of
FIRST. I am a member on one of the robotics teams known as Team 1241. I
was once a junior programmer on their team however I did not live upto
their expectations since my knowledge of c++ was very very very little.
Now I come forth to you asking for your help. Does anyone know what
specific areas of c++ i should study to help program the robot do such
tasks example: going up and down or moving an arm etc.



~Saki
 
V

Victor Bazarov

ÉmÏÄ“ror Åšaki said:
Hello. I am a n00b in the field of programming. I studied mIRC, html,
max script, and very little c++ logistics. I was wondering if what
specific areas of c++ might help for robotics. If you have heard of
FIRST. I am a member on one of the robotics teams known as Team 1241. I
was once a junior programmer on their team however I did not live upto
their expectations since my knowledge of c++ was very very very little.
Now I come forth to you asking for your help. Does anyone know what
specific areas of c++ i should study to help program the robot do such
tasks example: going up and down or moving an arm etc.

Your majesty:

If you have the ability to contact the team that rejected your attempts
to perform as part of it due to lack of C++ experience, wouldn't it make
more sense to ask that team about the actual knowledge they expect in
one who wants to be part of the team?

AFAIK C++, it does not contain any robotics-specific mechanisms or
features, which suggests that robotics programming is done using some
specific to robotics libraries. That can only mean one thing: you need
to look for those libraries and/or ask people involved with robotics about
them. I know a very good way to find people involved with robotics: post
to a newsgroup that deals with _robotics_, not to a newsgroup that deals
with a general purpose programming language.

V
 
S

Steven

Study everything, especially the libraries you will be using, read
books, and practice, practice, practice.
 
I

Ivan Vecerina

Ém?eror Saki said:
Hello. I am a n00b in the field of programming. I studied mIRC, html,
max script, and very little c++ logistics. I was wondering if what
specific areas of c++ might help for robotics. If you have heard of
FIRST. I am a member on one of the robotics teams known as Team 1241. I
was once a junior programmer on their team however I did not live upto
their expectations since my knowledge of c++ was very very very little.
Now I come forth to you asking for your help. Does anyone know what
specific areas of c++ i should study to help program the robot do such
tasks example: going up and down or moving an arm etc.

Things you need to know about C++ are not specific to robotics.
Study the core language, standard libraries, object-oriented programming and
design patterns.
A good book is Accelerated C++:
http://www.acceleratedcpp.com/.
Also consider Thinking in C++, for which a free pdf version is available:
http://www.mindview.net/Books/TICPP/ThinkingInCPP2e.html

Things you need to know about robotics are not specific to C++.
Your group most likely uses specific libraries (internally or externally
developed) that you should get familiar with. These could include tools for
motion control outputs, modeling the geometry of robots, rendering, and much
more...

Regards,
Ivan

NB: I work with www.xitact.com, which I think is considering collaboration
with one of the FIRST projects.
 
L

lmangold

ÉmÏÄ“ror Åšaki said:
Hello. I am a n00b in the field of programming. I studied mIRC, html,
max script, and very little c++ logistics. I was wondering if what
specific areas of c++ might help for robotics. If you have heard of
FIRST. I am a member on one of the robotics teams known as Team 1241. I
was once a junior programmer on their team however I did not live upto
their expectations since my knowledge of c++ was very very very little.
Now I come forth to you asking for your help. Does anyone know what
specific areas of c++ i should study to help program the robot do such
tasks example: going up and down or moving an arm etc.



~Saki


To more directly answer your question, my recommendation is to become
familiar with what hardware to use. For example, if you are using
serial devices, you will need to know how to write to a serial port.
What you send to those ports is based of the hardware you use.

If you are not already, I would become familiar with the basics of
robotic/RC systems. PWM, Servos, Speed Controllers, etc.. To further
that, start looking into path planning, geolocation, etc...

Someone in this thread also mentioned something about OOP...Robotic
systems can get very complex. OOP is critical from the begining.


--
Lee V. Mangold
Research Assistant
University of Central Florida
Institute for Simulation and Training
(e-mail address removed)
 
M

makc.the.great

Steven said:
Study everything, especially the libraries you will be using, read
books, and practice, practice, practice.

While I'm not the best coder in the world, a thing I've learned is: do
not read books. Read docs instead. Same time spent reading docs gets
you 2x the knowledge than that of reading books. Plus docs are free,
and books are not. It might seem that chewing-every-thing books are
better for a n00b, but they are not. Quality of self-gained knowledge
is better. With that said, I completely agree on "the libraries you
will be using" part. Just thought I'll let you know before you have
actually started to read books :)
 
V

Victor Bazarov

Steven said:
Study everything, especially the libraries you will be using, read
books, and practice, practice, practice.


While I'm not the best coder in the world, a thing I've learned is: do
not read books. [...]

That could be the reason (or a symptom of a reason) why you're not the
best coder. Although, you may be right, if all you aspire to be is
a coder, why bother reading books? They just interfere by trying to
teach you how to _engineer_ your software... Nah. One can't become the
best of anything if one dismisses at least one source of knowledge.

Did you hear one about this guy who did something stupid, and his wife
is scolding him, "You're an idiot! You're such an idiot!! If there was
a contest of idiots, you'd take the second place!" The guy, "Hey! Why
only the _second_ place?" The wife replies, "Because you're such
an idiot!"
 
M

makc.the.great

Victor said:
...you're such an idiot!"

Interesting reaction.

Once one of my friends had that book from "expert series". It's called
"mastering hdd secrets" or something. I've opened it at random page,
you know, just out of interest. There was a picture of hard disk with
compass needles all over it. I took another random page. Half of it was
shitty humor. Like in your post (So I see you've learned something from
books :). I thought than, even old good InterList had more info on
HDDs. But, on the other hand, you read books - you don't know what
InterList is.

Another book on JavaScript, that I had once... I've downloaded 6MB
JavaScript pdf reference from (now de-funct) Netscape developers
portal, and I threw that paper piece of shit out for good.

Well, I don't say I'm right, though... Everyone has to go his own way.
 
M

mlimber

Once one of my friends had that book from "expert series". It's called
"mastering hdd secrets" or something. I've opened it at random page,
you know, just out of interest. There was a picture of hard disk with
compass needles all over it. I took another random page. Half of it was
shitty humor. Like in your post (So I see you've learned something from
books :). I thought than, even old good InterList had more info on
HDDs. But, on the other hand, you read books - you don't know what
InterList is.

Another book on JavaScript, that I had once... I've downloaded 6MB
JavaScript pdf reference from (now de-funct) Netscape developers
portal, and I threw that paper piece of shit out for good.

Well, I don't say I'm right, though... Everyone has to go his own way.

Yours is the fallacy of hasty generalization (cf.
http://www.nizkor.org/features/fallacies/hasty-generalization.html).
Just because a few technical books that you've read were bad doesn't
mean all technical books are equally bad. See the FAQ for suggestions
on good ones.

Cheers! --M
 
K

Kai-Uwe Bux

mlimber said:
Yours is the fallacy of hasty generalization (cf.
http://www.nizkor.org/features/fallacies/hasty-generalization.html).
Just because a few technical books that you've read were bad doesn't
mean all technical books are equally bad. See the FAQ for suggestions
on good ones.

Right,

and just because the few times (thank goodness) that I touched a hot stove I
got burnt doesn't mean that all hot stoves are equally dangerous.

Well, I guess it all depends on what you consider "too small" a sample. Just
keep in mind that enlarging the sample incurs costs, and there is a point
where those costs make it unreasonable to do so. That also happens with
book recommendations. If all books recommended by someone turn out to be
bad, I will just stop taking that persons suggestions serious.


Best

Kai-Uwe Bux
 
M

mlimber

Kai-Uwe Bux said:
Right,

and just because the few times (thank goodness) that I touched a hot stove I
got burnt doesn't mean that all hot stoves are equally dangerous.

As the cited description of the fallacy states, "[A] Hasty
Generalization, like any fallacy, might have a true conclusion.
However, as long as the reasoning is fallacious there is no reason to
accept the conclusion based on that reasoning."
Well, I guess it all depends on what you consider "too small" a sample. Just
keep in mind that enlarging the sample incurs costs, and there is a point
where those costs make it unreasonable to do so. That also happens with
book recommendations. If all books recommended by someone turn out to be
bad, I will just stop taking that persons suggestions serious.

Agreed.

Cheers! --M
 
M

makc.the.great

mlimber said:
Yours is the fallacy of hasty generalization...
Just because a few technical books that you've read were bad doesn't
mean all technical books are equally bad. See the FAQ for suggestions
on good ones.

You can equally state directly opposite. E.g.,

"You have failed to generalize your experience...
Just because a few technical books that you've read were good doesn't
mean all technical books are equally good. See the amazon.com for
suggestions on bad ones."

There are lots, fuckin huge loads of shit in book stores, forgive me my
rude language (and this isn't even my language, but duh). It just does
not make any sense to read 10 books to find only 1 of them is good,
when everything you ever need to do this small piece of code is right
here in well-designed hypertext help file you've got.
 
M

mlimber

You can equally state directly opposite. E.g.,

"You have failed to generalize your experience...
Just because a few technical books that you've read were good doesn't
mean all technical books are equally good. See the amazon.com for
suggestions on bad ones."

Right, and that would also be a fallacy -- the fallacy of composition
(cf. http://www.nizkor.org/features/fallacies/composition.html). I did
not commit it, however.
There are lots, fuckin huge loads of shit in book stores, forgive me my
rude language (and this isn't even my language, but duh).

Forgiving your rude language (which belongs to no one but you), we all
agree that there are indeed bad books out there.
It just does
not make any sense to read 10 books to find only 1 of them is good,
when everything you ever need to do this small piece of code is right
here in well-designed hypertext help file you've got.

The question is, Is "*everything* you ever need to do" in that one
hypertext file? For me, I daresay, it would not be simply because a
single, small resource can't cover everything I need to know about. You
don't have to read every book out there to find out which ones are
good. You can get advice from trusted sources, e.g., magazine reviews,
your colleagues, your project manager, and perhaps even people on this
newsgroup.

Cheers! --M
 
M

makc.the.great

mlimber said:
The question is, Is "*everything* you ever need to do" in that one
hypertext file? For me... small resource can't cover everything
I need to know about.
Hey, it was not about "everything I need to know about", it's about
"to know enough to start working with this system/tool/programming
language/library/etc". Don't take it where it doesn't belong to.
You
don't have to read every book out there to find out which ones are
good. You can get advice from trusted sources, e.g., magazine reviews,
your colleagues, your project manager, and perhaps even people on this
newsgroup.
"I trust noone... not even myself." /allegedly J. Stalin/
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,743
Messages
2,569,478
Members
44,899
Latest member
RodneyMcAu

Latest Threads

Top