Introduction to JAUS
Installation
Download the latest source and build it, including ojNodeManager and ojVehicleSim. Install to /usr/local/jaus, or some place that is read-only, unless you plan to modify it intentionally. Make sure to add the dynamic libraries to your /etc/ld.so.conf libraries path or link them properly in make when you run code.
Basic Use
There are two libraries: libjaus and libopenJaus. libjaus contains most of the infrastructure (messages, state definitions, services, component structures, etc...). libopenJaus is an additional set of tools aimed at actual deployment and has the componentLibrary, nodeManager, utilities, etc... I recommend familiarizing yourself with the contents of the "./include" folders in each library's directory.
After you've read at least the Domain Model of the Jaus Documentation, go to the ojNodeManager directory and make sure you have already built it (there should be a ./bin folder with an ojNodeManager binary). In the ojNodeManager directory, you should see a file called "nodeManager.conf.template". The contents of this file must be tweaked in order to use it, so here is a bare-bones solution that will run out of the package. In order to run the ojNodeManager, you must place the "nodeManager.conf" file in the ./bin directory.
nodeManager.conf
# This subsection defines the JAUS characteristics of the node
[JAUS]
#Numeric value from 1-254 inclusive; determines
#the unique system ID value of the Node Manager
SubsystemId: 7
#Numeric value from 1-254 include; every
#node must have a unique ID
NodeId: 1
#These do not have to be unique; they are for human-readable interfaces
Subsystem_Identification:
RamALbertNode_Identification: primary
# This subsection defines the interfaces and their options for component communication
[Component_Communications]
#interface supports port 24629 and loopback network interface (127.0.0.1)
#and expects JAUS traffic only
JAUS_OPC_UDP_Interface: true
#enables communication between the Node Manager and local components
#interface uses port 24627 and the loopback (127.0.0.1) and
#expects non-JAUS traffic only
OpenJAUS_UDP_Interface: true
# This subsection defines the interfaces and their options for node communication
[Node_Communications]
#determines whether the ojNodeManager's node communications are enabled or not.
#enable for inter-node communication; disable for subsystem communication only
Enabled: true
#JUDP_Interface: true
#JUDP_IP_Address:
#JAUS_OPC_UDP_Interface: true
#JAUS_OPC_UDP_IP_Address:
# This subsection defines the interfaces and their options for subsystem communication
[Subsystem_Communications]
Enabled: true
#JUDP_Interface: true
#JUDP_IP_Address:
#JAUS_OPC_UDP_Interface: true
#JAUS_OPC_UDP_IP_Address:
Once you have done this, and you have tested that the ojNodeManager runs without problems, you are now equipped to create a test component. Follow the tutorial in the FAQs on the JAUS website.
--
StephenFox - 2010-09-16