home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #16 / NN_1992_16.iso / spool / sci / compaid / 150 < prev    next >
Encoding:
Text File  |  1992-07-27  |  6.7 KB  |  138 lines

  1. Newsgroups: sci.comp-aided
  2. Path: sparky!uunet!mcsun!news.funet.fi!ousrvr.oulu.fi!phoenix.oulu.fi!eha
  3. From: eha@phoenix.oulu.fi (Esa Haapaniemi)
  4. Subject: LabWiev & equivalents
  5. Message-ID: <1992Jul28.094247.6385@ousrvr.oulu.fi>
  6. Sender: usenet@ousrvr.oulu.fi
  7. Organization: University of Oulu, Finland
  8. X-Newsreader: Tin 1.1 PL4
  9. Date: Tue, 28 Jul 92 09:42:47 GMT
  10. Lines: 126
  11.  
  12. As I read from some previous post about things that is needeed in laboratory
  13. I'd like to give a small ad. Please forgive me, if this is not allowed
  14. here (I've been here only about a week).
  15. This conversation is taken in sci-amiga@cfth.havaii.edu.
  16.  
  17. From: pete@plutonium.CChem.Berkeley.EDU (Pete Goodeve)
  18. Subject: Re: What does the Amiga lack?
  19. Date: 26 Jul 1992 09:29:56 GMT
  20. Organization: University of California, Berkeley
  21.  
  22.  
  23. |> LabView is pretty cool (and its also available for MS-DOS).  We don't use it
  24. |> here, but I read about quite some time ago in an article on graphical
  25. |> programming (either BYTE or Dr. Dobbs, I don't recall which).  This system
  26. |> provides software versions of gauges, buttons, graphs, etc. that you normally
  27. |> find around a lab, and ways to hook them together into a data aquisition
  28. |> system.  It's pretty specialized, but I imagine it would be fun to hack in.
  29. |> It's in some ways the same idea as AmigaVision, but oriented toward lab work
  30. |> rather than presentation authoring.  The idea is that anyone can assemble
  31. |> such an application, and rather quickly -- you don't need a programmer
  32. >
  33. > I work in a brain electrophysiology lab and we use Labview II extensively
  34. > for signal processing. Labview comes with an extensive library of signal
  35. > processing "VIs" (the Labview metaphor is the Virtual Instrument or "VI").
  36. > So, to build a VI in Labview, you take the built in functions, which are
  37. > represented by icons with input and output nodes, assemble them into modular
  38. > sub-VIs, with their own input and output nodes, and wire them together. The
  39. > data then flows along the wires to the various sub-VIs, getting processed
  40. > along the way. Just about anything that you can code up in C, you can code
  41. > up in Labview. It isn't always easier or more efficient but it can be done.
  42. > It is coding for electrical engineers.
  43. >
  44. > [.....]
  45. >
  46. > It is the existance of applications like Labview that has me doing my real
  47. > work on Macs instead of my Amiga.
  48.  
  49.  
  50. [Well, OK -- I have mentioned it once before in this group, but this gives
  51. me a good excuse to do so again... (:-))]
  52.  
  53. There *is* now a programming environment akin to LabView on the Amiga!
  54. We believe that it's -- at least potentially -- considerably superior
  55. to programs that run on other platforms, like LabView, because it takes
  56. full advantage of multitasking in ways that would be hard on a Mac or PC.
  57.  
  58. I say "potentially", because for one thing the system is fairly new,
  59. and it will take time to develop a wide range of modules; the current
  60. set are designed to process acoustic waveforms (and are being used in
  61. a research lab), but it should be possible to extend them to almost
  62. any form of data.  More serious is another `lack' on the Amiga, not
  63. of software but *hardware*.  There are very few cards that can connect
  64. the machine to an experimental environment.  The existing installation
  65. either works through a custom interface (with driver modules written
  66. by the researcher) or from previously recorded data.
  67.  
  68. For example, the only Analog-to-Digital card I know for the Amiga is by
  69. ACDA, and I am not impressed.  Would you believe -- on a multitasking
  70. machine -- that it doesn't provide for interrupts?!  Doesn't have any DMA
  71. either of course.  Not too bad I suppose if you're doing single 25 microsec
  72. conversions every millisecond or slower, but you're kind of stuck if you
  73. want to chain a lot of conversions at top speed, or -- in the other
  74. direction -- if you want to use the on-board timers to keep a slow tick
  75. rate for the conversions.
  76.  
  77. ASDG's GPIB (IEEE 488) interface, on the other hand, looks pretty nice.
  78. Problem is, you probably have to write a control module for each instrument
  79. you connect this way, because they all have their own command protocol.
  80. (Not usually that big a job, but it does mean you can't plug and play...)
  81.  
  82.                                ---
  83.  
  84. So, what *is* this program, then?  We call it "The Web", as a reasonably
  85. descriptive title.  It actually is more a suite of programs that cooperate
  86. closely with each other, rather than the single monolithic monster you are
  87. liable to find on other machines.  Overall control is through a "Diagram
  88. Window" where the acquisition and analysis configuration is constructed
  89. from the desired elements.  You simply place these in the window with the
  90. mouse and connect them together as you wish.
  91.  
  92. Each distinct *type* of element is provided by a separate program, so there
  93. is no problem adding new types.  Each of these `Module' programs manages
  94. all of its instances in the configuration, handling things like pop-up
  95. parameter panels; it also naturally provides all the data algorithms
  96. relevant to that type of element.  It does *not*, however, normally run
  97. these algorithms itself: each linear `path' of connected elements is
  98. represented by a single process, from which the algorithms are invoked
  99. directly.  This way we have the absolute minimum of task switching, so
  100. things are *fast*.
  101.  
  102. An important component of the system too is Dave Navas' `SHADOW' library,
  103. which provides object oriented `communal services' and resource management
  104. for the modules.  For example a single `Master' module manages all the
  105. gadgets that an element might need in its parameter panel.  Writing your
  106. own custom module is mostly just a matter of slotting your own data functions
  107. into a standard framework, and specifying the gadgets you want in a sort
  108. of `tag list' format (similar in concept to but more extensive than the
  109. 2.0 tag list scheme).
  110.  
  111. You might want to think about other things this could be applied to.
  112. The structure of the data -- and it *is* structured and self-identifying,
  113. not just a stream of values -- passed around the system could be arranged
  114. in almost any way you desire.  You could pass bitmaps -- anim frames for
  115. instance -- through a series of filters before displaying them.  You could
  116. do MIDI very nicely, but maybe there's enough competition in that area
  117. already.  And yes, you can split and merge data streams, or have elements
  118. that take data from more than one input channel or generate more than one
  119. output.  Very flexible.
  120.  
  121.                                         -- Pete --
  122.  
  123.  
  124. ============================================================================
  125. The above statements and opinions are those of the author, who is not
  126. speaking for the University of California in any way.
  127. ============================================================================
  128.  
  129. End of included article.
  130.  
  131. Any comments ?
  132.  
  133. Esa Haapaniemi
  134. University of Oulu
  135. Department of Chemistry
  136. Finland
  137.  
  138.