The CONTROL tab in the Viam app gives you the ability to test, monitor, and operate the machines in your fleet.
The CONTROL tab provides a control interface for each component and service that you have configured for you machine.
For example, if you have configured a base with wheels, you can move your machine’s with an arrow pad and control the base’s speed by setting its power with a slider.
If you have configured a camera component, a window in the CONTROL tab displays the camera output.
If you use remote control in the Viam app UI, all communication to the machine uses WebRTC.
For local communication between parts Viam uses gRPC or WebRTC.
You can also switch between different machine parts directly from the CONTROL tab and control the selected machine part.
For more information on configuring and controlling machine parts, see Machine Architecture.
Components
For more detailed information on how to operate and test your resources, expand the relevant resource below:
Arm
Test the arm
Once your arm is configured and connected, open the arm’s TEST panel on the CONFIGURE or CONTROL tabs.
Use the buttons to move the end position or the joints and check whether it moves as expected.
If the arm does not appear on the TEST panel, or if you notice unexpected behavior, check your machine’s LOGS tab for errors, and review the configuration.
Base
After you configure the base, open the base’s TEST panel on the CONFIGURE or CONTROL tabs to view the controls to enable keyboard or discrete control over your machine’s movement.
In the Quick move section, you can toggle the keyboard control to active.
With the Keyboard toggle active, use W and S to go forward and back, and A and D to arc and spin.
Try driving your base around using the WASD keyboard controls.
Caution
Ensure that your robot has sufficient space to drive around without hitting anyone or anything.
You can also move straight, spin, set power or set velocity from the base panel.
If you do not see the base card in the TEST panel, check the LOGS tab for possible setup or configuration errors.
Board
Test analogs
Once you have configured your analogs, open the board’s TEST panel on the CONFIGURE or CONTROL tabs to monitor analogs.
The numbers displayed next to each analog name represent the digital signal received from the analog inputs.
Test digital_interrupts
Once you have configured your digital interrupts, open the board’s TEST panel on the CONFIGURE or CONTROL tabs to monitor interrupt activity.
The value displayed next to each interrupt name represents the total count of interrupts triggered by the corresponding digital interrupt.
Camera
Once your camera is configured and connected, expand the TEST panel on the CONFIGURE or CONTROL tabs.
If everything is configured correctly, you will see the live feed from your camera.
Encoder
Test the encoder
Once your encoder is configured and connected, open the encoders’s TEST panel on the CONFIGURE or CONTROL tabs.
The ticks count is displayed.
Try moving the encoder (for example, by turning a motor it is attached to) and check whether the count increases as expected.
If the encoder does not appear on the TEST panel, or if you notice unexpected behavior, check your machine’s LOGS tab for errors, and review the configuration.
Gantry
Test the gantry
Once your gantry is configured and connected, open the gantry’s TEST panel on the CONFIGURE or CONTROL tabs.
Use the panel to adjust the position of the actuator on the axis and check whether it moves as expected.
If the gantry does not appear on the TEST panel, or if you notice unexpected behavior, check your machine’s LOGS tab for errors, and review the configuration.
Generic component
Test the generic component
After you configure your generic component, open the generic’s TEST panel on the CONFIGURE or CONTROL tabs.
Use the card to send arbitrary commands to the resource with DoCommand().
Gripper
Test the gripper
After you configure your gripper, open the gripper’s TEST panel on the CONFIGURE or CONTROL tabs.
Use the buttons to open and close the gripper.
Input controller
Test the input controller
After you configure your input controller, open the input controller’s TEST panel on the CONFIGURE or CONTROL tabs.
View the current value of each input on your controller.
Motor
Once your motor is configured and connected, open the motor’s TEST panel on the CONFIGURE or CONTROL tabs.
Use the buttons to try turning your motor forwards or backwards at different power levels and check whether it moves as expected.
If the motor does not appear on the TEST panel, or if you notice unexpected behavior, check your machine’s LOGS tab for errors, and review the configuration.
Movement sensor (GPS)
Test the movement sensor
After you configure your movement sensor, open the movement sensor’s TEST panel on the CONFIGURE or CONTROL tabs.
This panel presents the data collected by the movement sensor.
The sections in the panel include the position, linear velocity and compass heading.
Movement sensor (IMU)
Test the movement sensor
After you configure your movement sensor, open the movement sensor’s TEST panel on the CONFIGURE or CONTROL tabs.
This panel presents the data collected by the movement sensor.
The sections in the panel include the orientation, angular velocity and linear acceleration.
Power sensor
Test the power sensor
After you configure your power sensor, open the power sensor’s TEST panel on the CONFIGURE or CONTROL tabs.
The panel contains readings for your voltage, current, and power.
Sensor
Test the sensor
After you configure your sensor, open the sensor’s TEST panel on the CONFIGURE or CONTROL tabs.
To access detailed readings from your sensor, click on the Get Readings button.
Servo
Test the servo
After you establish the connection to your servo motor, open the servo’s TEST panel on the CONFIGURE or CONTROL tabs. Use the buttons to move the servo motor to the desired angle.
Services
The following services also provide control interfaces:
SLAM: for creating a new SLAM map and for using the motion service to move a machine on a SLAM map
Navigation: for moving a machine to waypoints on a map
Control interface in the Viam mobile app
In addition to the Viam app, the fully featured web application where you can access all fleet management tools, there is a Viam mobile app.
The Viam mobile app allows you to test, monitor and remotely operate machines in your fleet.
It provides a control interface for each component and service that you have configured for you machine.
For example, you can view live camera feeds, adjust components’ runtime parameters, and switch between controllable components.