comp.lang.ada
 help / color / mirror / Atom feed
From: kalvin.news@gmail.com
Subject: Re: Ada, the best language with the not-so-best tool chain
Date: Wed, 10 Oct 2012 06:45:57 -0700 (PDT)
Date: 2012-10-10T06:45:57-07:00	[thread overview]
Message-ID: <2beff182-a1ce-4336-b842-0e57deb95c6f@googlegroups.com> (raw)
In-Reply-To: <k53sa4$rvd$1@dont-email.me>

keskiviikko, 10. lokakuuta 2012 16.13.41 UTC+3 Simon Clubley kirjoitti:
> On 2012-10-10, Dmitry A. Kazakov <mailbox@dmitry-kazakov.de> wrote:
> 
> > On Tue, 9 Oct 2012 23:23:11 +0000 (UTC), Simon Clubley wrote:
> 
> >
> 
> >> Let's make this discussion more tangible by using a specific example.
> 
> >> 
> 
> >> The scenario: a hobbyist/academic researcher/whoever is building a
> 
> >> small computer controlled model aircraft, in the order of up to about
> 
> >> a metre in length for the fuselage.
> 
> >
> 
> > I have no idea about controlling an aircraft. Can one do it without a
> 
> > multitude of analogue inputs and outputs, rotary encoders etc?
> 
> >
> 
> 
> 
> [Remember we are talking about model aircraft here, not large human
> 
> carrying multi-million dollar/euro/pound aircraft.]
> 
> 
> 
> The interface problem is actually two sub-problems: (1) gathering sensor
> 
> data and (2) commanding the aircraft to move as a result of processing
> 
> the sensor data.
> 
> 
> 
> The input sensors are generally (but not always) digital these days.
> 
> For example, the low cost gyros and accelerometers you would typically
> 
> use usually have a SPI or I2C interface.
> 
> 
> 
> Commanding a model aircraft to move is done in exactly one way: by
> 
> sending command pulses to a standard R/C aircraft servo. The following
> 
> explains how these servos work:
> 
> 
> 
> http://en.wikipedia.org/wiki/Servo_%28radio_control%29
> 
> 
> 
> The length of the pulse determines the position of the servo.
> 
> 
> 
> Electronic speed controllers (the controller used to regulate power
> 
> to the electric motor driving the propeller) work in the same way;
> 
> pulses are sent along a command line.
> 
> 
> 
> These pulses are digital in nature; driven to logic 1 for a period of
> 
> time and then driven to logic 0 to end the pulse. They are ideally
> 
> suited to be connected to a GPIO line in output mode.
> 
> 
> 
> >> Question 1: if you could not use GPIO lines to control commodity
> 
> >> R/C components, how would you have the onboard computer control the
> 
> >> engine and flight control surfaces ?
> 
> >
> 
> > ARM boards look very much like a compromise. That rarely pays off. Likely
> 
> > there exist better solutions for a model aircraft, but I cannot judge that.
> 
> >
> 
> 
> 
> I would welcome suggestions as I cannot currently think of any viable
> 
> alternatives to a small and low power general purpose onboard computer.
> 
> 
> 
> >> To make this on topic for this newsgroup, this seems to be a common
> 
> >> hobbyist or researcher project in a number of circles, and is _exactly_
> 
> >> the type of project for which Ada would be very well suited indeed.
> 
> >
> 
> > How many people spend their time building model aircrafts? Could rail
> 
> > transport modeling be a better candidate?
> 
> >
> 
> 
> 
> When you look around, it seems a surprising amount of people do (or at
> 
> least they consider it). Compared to making a aircraft fly through the
> 
> air, rail transport modeling seems kind of boring in comparison. :-)
> 
> 
> 
> > Anyway, if you need an altimeter instrument for the ground control system,
> 
> > let me know. I maintain an instrumentation library in Ada.
> 
> >
> 
> >> Question 2: how would you put the idea of using Ada for this project
> 
> >> into someone's head and what changes to the Ada ecosystem would be
> 
> >> needed to make it viable for people with different ranges of embedded
> 
> >> experience to actually use Ada in this case ?
> 
> >
> 
> > I would tell him that he could use the same software during modeling and
> 
> > deployment phases, basically, doing much of the work in doors rather than
> 
> > in field.
> 
> >
> 
> 
> 
> The answer would need to be more specific than that; there already exist
> 
> testing environments which allow you to do some work on your control systems
> 
> indoors. For example, have a look at Flightgear: http://www.flightgear.org/
> 
> 
> 
> Quite a few people use it for developing parts of their system within a
> 
> simulated environment.
> 
> 
> 
> A person would generally need to be using arguments along the lines of
> 
> suggesting that Ada based development would result in more robust and/or
> 
> quicker to develop code.
> 
> 
> 
> Simon.
> 
> 
> 
> -- 
> 
> Simon Clubley, clubley@remove_me.eisner.decus.org-Earth.UFP
> 
> Microsoft: Bringing you 1980s technology to a 21st century world

Here is a nice page about Drones: http://diydrones.com/
Maybe this will give some hints about the size and power consumption restrictions. Anyway, these projects are good candidates for bare-metal Ada: Embedded, robust real-time systems.



  reply	other threads:[~2012-10-10 13:45 UTC|newest]

Thread overview: 170+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-10-07 17:34 Ada, the best language with the not-so-best tool chain Patrick
2012-10-07 18:43 ` Dmitry A. Kazakov
2012-10-07 22:35   ` Simon Clubley
2012-10-08  7:35     ` Dmitry A. Kazakov
2012-10-08 12:10       ` The Ada community's attitude, was: " Simon Clubley
2012-10-09  9:20     ` pavel.klinkovsky
2012-10-12 12:09     ` Lucretia
2012-10-12 12:47       ` Simon Clubley
2012-10-12 12:59         ` Lucretia
2012-10-16 20:05           ` Simon Clubley
2012-10-16 20:10             ` phone.john.kern
2012-10-18 14:14             ` Lucretia
2012-10-18 17:05               ` Simon Clubley
2012-10-12 13:28       ` kalvin.news
2012-10-11  4:04   ` Yannick Duchêne (Hibou57)
2012-10-07 18:49 ` Shark8
2012-10-07 20:21   ` Patrick
2012-10-08  7:31     ` Dmitry A. Kazakov
2012-10-08 11:28       ` Simon Clubley
2012-10-08 12:49         ` Dmitry A. Kazakov
2012-10-08 12:40       ` Georg Bauhaus
2012-10-08 13:00         ` Dmitry A. Kazakov
2012-10-08 13:57           ` Patrick
2012-10-08 14:02             ` Patrick
2012-10-08 19:53             ` Rego, P.
2012-10-08 20:27             ` Niklas Holsti
2012-10-08 14:00           ` Georg Bauhaus
2012-10-08 14:22             ` Dmitry A. Kazakov
2012-10-08 14:30               ` Georg Bauhaus
2012-10-08 16:12                 ` Dmitry A. Kazakov
2012-10-08 16:54                   ` Patrick
2012-10-08 18:22                     ` Dmitry A. Kazakov
2012-10-08 18:29                       ` Patrick
2012-10-08 19:27                         ` Dmitry A. Kazakov
2012-10-08 20:44                           ` Simon Clubley
2012-10-09  9:13                             ` Dmitry A. Kazakov
2012-10-09  9:59                               ` Georg Bauhaus
2012-10-09 12:16                                 ` Dmitry A. Kazakov
2012-10-09 15:06                                   ` Georg Bauhaus
2012-10-09 16:53                                     ` Dmitry A. Kazakov
2012-10-18 21:53                             ` Randy Brukardt
2012-10-19 11:23                               ` Mark Lorenzen
2012-10-19 14:09                               ` Patrick
2012-10-19 14:47                                 ` Yannick Duchêne (Hibou57)
2012-10-19 14:56                                   ` Patrick
2012-10-19 15:04                                     ` Vinzent Höfler
2012-10-19 17:30                                     ` Simon Clubley
2012-10-19 18:07                                       ` Yannick Duchêne (Hibou57)
2012-10-19 19:05                                       ` Georg Bauhaus
2012-10-19 19:14                                       ` Jeffrey Carter
2012-10-19 18:24                                     ` Anh Vo
2012-10-19 18:40                                       ` Adam Beneschan
2012-10-19 21:44                                     ` Jeffrey Carter
2012-10-19 22:28                                     ` Brian Drummond
2012-10-20 10:57                                       ` Yannick Duchêne (Hibou57)
2012-10-20 23:08                                         ` Brian Drummond
2012-10-19 15:38                                 ` Dmitry A. Kazakov
2012-10-19 22:08                                 ` Brian Drummond
2012-10-24  9:56                               ` Paul Rubin
2012-10-24 11:21                                 ` Simon Clubley
2012-10-24 13:13                                   ` kalvin.news
2012-10-24 16:16                                     ` Paul Rubin
2012-10-24 16:27                                       ` Yannick Duchêne (Hibou57)
2012-10-24 16:41                                         ` Paul Rubin
2012-10-24 16:57                                           ` Yannick Duchêne (Hibou57)
2012-10-24 17:36                                             ` Paul Rubin
2012-10-24 17:55                                             ` Niklas Holsti
2012-10-24 21:17                                           ` Brian Drummond
2012-10-24 22:08                                             ` Paul Rubin
     [not found]                                               ` <4dqg885bcf05isnup07a28jrq8lbq5fknd@invalid.netcom.com>
2012-10-24 22:31                                                 ` Paul Rubin
2012-10-25  8:42                                               ` Brian Drummond
2012-10-29 14:51                                   ` mjsilva
2012-10-08 23:04                           ` Patrick
2012-10-08 23:07                           ` Patrick
2012-10-09  8:35                             ` Dmitry A. Kazakov
2012-10-08 21:28                         ` Ludovic Brenta
2012-10-08 23:58                           ` Patrick
2012-10-09  5:59                           ` Niklas Holsti
2012-10-09  8:02                             ` kalvin.news
2012-10-09  8:06                               ` kalvin.news
2012-10-10  5:56                               ` Stephen Leake
2012-10-10  6:48                                 ` Niklas Holsti
2012-10-10  7:06                                   ` Ludovic Brenta
2012-10-10  8:17                                     ` Niklas Holsti
2012-10-12 12:27                               ` Lucretia
2012-10-12 12:45                                 ` Simon Clubley
2012-10-12 12:58                                   ` Lucretia
2012-10-09  8:10                             ` Brian Drummond
2012-10-10 15:26                               ` Tero Koskinen
2012-11-08  9:36                               ` Jacob Sparre Andersen
2012-11-08 13:52                                 ` Rego, P.
2012-11-08 21:50                                 ` Brian Drummond
2012-11-09  1:24                                 ` Randy Brukardt
2012-11-09 10:16                                   ` Brian Drummond
2012-11-10  8:05                                     ` Randy Brukardt
     [not found]                                       ` <ulat9855qcom15kt7lk68rsidf44uau4q5@invalid.netcom.com>
2012-11-15  1:21                                         ` Randy Brukardt
2012-12-17 16:33                                 ` Brian Drummond
2012-12-17 17:57                                   ` Shark8
2012-12-25  9:29                                   ` Paul Rubin
2012-12-26 10:38                                     ` Brian Drummond
2012-12-25 10:11                                   ` Niklas Holsti
2012-12-26 10:40                                     ` Brian Drummond
2012-10-08 19:17                       ` kalvin.news
2012-10-08 20:16                       ` Simon Clubley
2012-10-09  9:33                         ` Dmitry A. Kazakov
2012-10-09  9:57                           ` kalvin.news
2012-10-09 12:31                             ` Dmitry A. Kazakov
2012-10-09 12:51                               ` kalvin.news
2012-10-09 13:01                                 ` Dmitry A. Kazakov
2012-10-09 12:04                           ` Simon Clubley
2012-10-09 13:18                             ` Dmitry A. Kazakov
2012-10-09 15:53                               ` kalvin.news
2012-10-09 17:08                                 ` Dmitry A. Kazakov
2012-10-09 18:26                                   ` kalvin.news
2012-10-09 20:40                                     ` Dmitry A. Kazakov
2012-10-09 23:23                                   ` Simon Clubley
2012-10-10  7:36                                     ` Dmitry A. Kazakov
2012-10-10 13:13                                       ` Simon Clubley
2012-10-10 13:45                                         ` kalvin.news [this message]
2012-10-10 15:44                                         ` Rego, P.
2012-10-10 17:52                                           ` Simon Clubley
2012-10-10 15:40                                       ` Rego, P.
2012-10-10 16:09                                         ` Dmitry A. Kazakov
2012-10-11  9:41                               ` Yannick Duchêne (Hibou57)
2012-10-11 12:01                                 ` Dmitry A. Kazakov
2012-10-09 12:29                           ` Vinzent Hoefler
2012-10-09 12:55                             ` Dmitry A. Kazakov
     [not found]                           ` <hok878l1k7s5i37k8uejv91t82ad41pipg@invalid.netcom.com>
2012-10-09 17:23                             ` Dmitry A. Kazakov
2012-10-11 15:44                           ` mjsilva
2012-10-11 16:20                             ` Dmitry A. Kazakov
2012-10-11 16:55                               ` mjsilva
2012-10-08 20:29                       ` Simon Clubley
2012-10-08 20:49                         ` Simon Clubley
2012-10-11 15:22                       ` mjsilva
2012-10-11 15:52                         ` Yannick Duchêne (Hibou57)
2012-10-11 16:00                           ` Patrick
2012-10-11 16:31                         ` Dmitry A. Kazakov
2012-10-11 16:52                           ` Niklas Holsti
2012-10-16 20:15                         ` phone.john.kern
2012-10-18 22:33                         ` Randy Brukardt
2012-10-18 22:52                           ` Jeffrey Carter
2012-10-18 23:14                             ` Randy Brukardt
2012-10-19  0:46                               ` Jeffrey Carter
2012-10-18 23:58                             ` Yannick Duchêne (Hibou57)
2012-10-19 22:49                           ` Tero Koskinen
2012-10-22 14:25                           ` mjsilva
     [not found]                             ` <be26881c-6662-4830-b86f-34a7d8b25bf4@googlegroups.com>
2012-10-22 15:04                               ` Yannick Duchêne (Hibou57)
2012-10-16 20:08                       ` phone.john.kern
2012-10-08 18:34                     ` Simon Wright
2012-10-08 18:57                       ` Patrick
2012-10-08 20:13             ` Rego, P.
2012-10-07 20:33 ` Niklas Holsti
2012-10-11 16:22   ` mjsilva
2012-10-08 12:02 ` kalvin.news
2012-10-08 20:48   ` Niklas Holsti
2012-10-09  3:03 ` Stephen Leake
2012-10-09  3:24   ` Patrick
2012-10-09  5:44     ` Niklas Holsti
2012-10-10  5:52     ` Stephen Leake
2012-11-08  8:07       ` Jacob Sparre Andersen
2012-11-09 12:29         ` Stephen Leake
2012-11-09 12:56           ` Dmitry A. Kazakov
2012-11-20 21:25         ` Tero Koskinen
2012-11-20 22:15           ` Niklas Holsti
2012-11-21 16:18           ` Lucretia
2012-10-10 11:04 ` kalvin.news
2012-10-11 17:44 ` mjsilva
2012-10-16 20:13   ` phone.john.kern
2012-11-07 14:02 ` Kristoffer Nyborg Gregertsen
2013-01-02  7:01 ` Diogenes
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox