Home

Documentation

Project Support

Changes in Version 1 of GraspSw

Author:
trac
Timestamp:
Sun Jul 6 11:29:20 2008

Legend:

Unmodified
Added
Removed
Modified
  • GraspSw

    v0 v1
      1  '''II. [wiki:Grasp STARGRASP Software Overview]''' 
      2   
      3  [[TracNav(GraspContents)]] 
      4   
      5  There are five layers of interfaces to the STARGRASP controller system.  Each is built on only the next lower layer: 
      6   
      7  A. [wiki:GraspSwDemoScripts Demo Scripts] 
      8   
      9    Our example/template script commands run on the STARGRASP pixel server. 
      10    They are implemented in Bourne Shell and are primarily for 
      11    demonstration -- a suggested way to integrate a camera 
      12    or set of detectors controlled by STARGRASP into a larger system. 
      13    The scripts use toolkit level commands, described below, 
      14    to control a group of controller boardsets. 
      15   
      16  B. [wiki:GraspSwToolkit Toolkit Level] 
      17   
      18    The STARGRASP toolkit consists of C programs which a user or 
      19    script can invoke on the pixel server host.  Toolkit programs 
      20    can be invoked on any host with the ability to connect to the 
      21    controller using IP over Ethernet.  The most important tools 
      22    in the toolkit are those which receive log messages, boot the 
      23    controller, send arbitrary commands, and retrieve FITS images. 
      24    Additional engineering tools exist to visualize and optimize 
      25    noise performance and generate clocking patterns. 
      26   
      27  C. [wiki:GraspSwClibraries STARGRASP C Libraries] 
      28   
      29    Each of the toolkit tools are built on five main C Libraries. 
      30    Users wishing to replace the Demo Scripts, or make their own 
      31    customized tools that work in a similar fashion to the 
      32    toolkit level can build their own programs by using the 
      33    APIs at this level and linking with these libraries.  Some 
      34    of the APIs at this level are still evolving, so we recommend 
      35    using the Toolkit tools instead, if possible. 
      36   
      37  D. [wiki:GraspSwControllerCmd Controller Socket Commands] 
      38   
      39    The STARGRASP C libraries must accomplish all controller 
      40    communication through a TCP socket on the controller's 
      41    port 915 (by default.)  The majority of these commands are sent 
      42    by using grasp_cmd() (the C function, or the toolkit tool.) 
      43    grasp_cmd is a pass-through to the extensive list of commands 
      44    that the controller supports at the socket level.  For diagnostics, 
      45    many of these commands can also be typed manually if a serial 
      46    console is connected to the controller, and most can be sent 
      47    interactively with a tool such as "telnet" or "nc".  A command 
      48    exists to control each analog and digital function of the controller. 
      49   
      50  E. [wiki:GraspSwRegisters Registers and Clocking Instructions] 
      51   
      52    Registers and Clocking Instructions are the lowest level API, 
      53    used only by someone adding a new controller socket level command. 
      54    All controller socket level commands are implemented in C code 
      55    (downloaded as the stage2.srec to the controller) which modifies 
      56    registers or address space, and/or writes instructions to the 
      57    clocking engine.