Skip to content

[Tutorial 2.5] Using the Poultry Inspector

Colby Skeggs edited this page Nov 11, 2015 · 7 revisions

WARNING: THIS DOCUMENTATION IS FOR CCRE v2, NOT CCRE v3!

See the readme on the main page for the correct documentation.

Using the Poultry Inspector

[Back to the previous tutorial]([Tutorial 2.4] The Cluck Communication System - Basic Usage)

Poultry Inspector

The Poultry Inspector is a tool that lets you interact with a Cluck network, essentially acting like a virtual control panel. Below is a listing of the components, starting with the ones that are always on the screen (Save/Load, Edit/Operate Mode, Open/Close Palette, Network Controller.)

Poultry Inspector Image

You can start the Poultry Inspector by going to Run -> Run History -> Poultry Inspector.

Most components can be dragged around the screen by clicking and dragging while in edit mode.

Poultry Inspector Dragging

Save/Load Component

At the upper-left is the save/load button. This lets you keep the form of your window when you close the Poultry Inspector. Click the SAVE button to save, and the LOAD button to load. Simple!

Poultry Inspector Save/Load

Networking Controller

At the upper-right is the networking controller. Click on it to toggle it between open and closed.

Network Panel Closed Network Panel Open

While closed, it will display both the current status of the network (i.e. not ready if not connected to a network, connecting... while connecting to a robot, established while connected, etc.) and the total network utilization in kilobits. (Not the rate of utilization.)

While open, it will display the current target address. By default, this is 10.$T$E.$A$M.2:443, which works on the cRIO. You can type into and backspace the contents of this address box. More helpfully, you can select other entries from the list:

roboRIO entry selected

Make sure to close the pane (by clicking on it) after you're done reconfiguring it.

Edit/Operate Mode Selector

At the bottom-left is EDIT MODE versus OPERATE MODE. Click on this to switch modes.

edit mode switch

In operate mode:

operate mode

  • When you click on a component, you activate it. (Switch the position of a switch, press a button, etc.)
  • Some nonessential components are hidden.
  • The background of the window is white.
  • The background and name of basic control disappear. (Use text components to label them.)

In edit mode:

edit mode

  • When you click on a component's background, you drag it.
  • When you click on a component's active zone, you activate it.
  • All components are fully visible.
  • The background of the window is black.

Right-clicking instead of left clicking acts like you're in the opposite mode from the one you're really in, so you can, for example, drag around components while still in operate mode.

You can also switch modes by holding control and pressing the shift key.

Open/Close Palette Component

At the bottom-right is OPEN PALETTE versus CLOSE PALETTE. The Top Level Palette (discussed below) allows you to drag out various basic components to set up your virtual control panel. Simply click on this to open the palette if it is closed, and vice versa.

palette ready to open

palette opened

You can also open/close this by pressing the shift key. (If this doesn't work, make sure that you aren't editing any text, including in the network controller, because that captures the shift key as part of letting you enter text.)

Top Level Palette

This palette gives you access to the built-in components of the Poultry Inspector. You'll use this while setting up your Poultry Inspector workspace. See Open/Close Palette Component above for information on how to open and close this.

It provides access to LoggingComponent, TextComponent, TrashComponent, NetworkPaletteComponent, ListPaletteComponent, FolderComponent, VirtualPhidget, and PhysicalPhidget.

See below under Palette Components for more information on using palettes.

top level palette

Logging Component

There is by default one of these components on the screen. When any connected system logs a message, it will also appear here. You can drag the blue or green box at the left to scroll. While in operate mode, you can also scroll by dragging the left half up and down. In operate mode, you can also click on the right half to get an option to clear the contents of the logging pane.

logging component

Text Component

A text component allows you to make large labels to specify what components do. These are visible in both edit and operate mode. To edit the contents, interact with the text component and type. (If you are in operate mode, this means left click, and if you are in edit mode, this means right click.) Click on it again, or press enter, to stop editing it.

creating a text component

Here's what it looks like while editing a text component:

editing a text component

Trash Component

A trash component allows you to get rid of other components. Simply drag them to the trash to get rid of them. This only works for components that you can drag. Right-click on the trash component to delete the trash component itself.

trash component

Network Palette Component

This component allows you to find and work with various components on the Cluck network.

See below under Channel Components for the kinds of components that are here.

See below under Palette Components for more information on using palettes.

network palette

List Palette Component

This component allows you to store and take back out any other components by dragging them to or from here.

See below under Palette Components for more information on using palettes.

list palette component

Folder Component

This simple component allows you to drag other components to it to save them. Right-click to take back out the most-recently-saved component.

folder component

Virtual Phidget Component, Physical Phidget Component

Team 1540 uses a Phidget LCD and Interface Kit module for our external copilot station. Correspondingly, we have an easy way to use such a module. Drag out the Physical Phidget Component to add access to a physical Phidget. Drag out the Virtual Phidget Component to open a new window that provides the same I/O as a Phidget, so that you can test Phidget code without a Phidget.

If you don't have an actual Phidget, don't bother with this.

virtual phidget

physical phidget

Palette Components

Palette components are listings of certain components. You can scroll through them with the scroll bar at the left of the palette. Click and drag an entry in the list to create a new instance / take out the current instance. For some palettes, you can drag components back in, but this is rare and generally will just put the component behind the palette. If you need to get rid of a component that you dragged out, use a trash component.

palette example

Channel Components

These are the most important components! There is one type of component per basic channel type: FloatInput, FloatOutput, BooleanInput, BooleanOutput, EventInput, EventOutput. These have multiple views, which can be selected by clicking the small grey circle in the corner.

A FloatInput component shows you the current value of the input.

float inputs

A FloatOutput component looks similar, but lets you write instead of read. Drag the HORIZONAL_POINTER view to change the value from -1.0 to +1.0. Click on the + and - buttons in the TICKER view to adjust the value. Click and type in the TEXTUAL view to change the value.

float outputs

A BooleanInput component shows you a light representing on (green) versus off (red), in the RED_GREEN_LIGHT mode. In the WARNING_LIGHT mode, the light flashes if the boolean is true (to be used to alert the driver of something). In the TEXTUAL mode, the text just displays TRUE or FALSE based on the state of the component.

boolean inputs

A BooleanOutput component is a switch that you can toggle or slide between on (green) and off (red).

boolean outputs

A EventInput component flashes whenever the event occurs, in FLASHING_LIGHT mode. In TIME_COUNTER, it counts up from the last time the event occurred. In TEXTUAL, it displays YES for half a second after each event occurrence.

event inputs

A EventOutput component is a button that can be pressed to cause the event to occur. The button will continue to look pressed for 200 to 500 milliseconds depending on the button view, but will only fire the event at the start of that.

event outputs

Next: [Constant Tuning]([Tutorial 2.6] Constant Tuning)