Abstract:
Multichannel device controllers are disclosed. In one embodiment, a multichannel device controller includes a plurality of user selectable control modes for controlling a multichannel device and a plurality of user configurable settings for adjusting parameters associated with the plurality of user selectable control modes. A touchscreen displays a user interface corresponding to a selected one of plurality of user selectable control modes and receives user input indicative of a command to send to the multichannel device. A processor generates the command to send to the multichannel device based at least in part on the user input and the plurality of user configurable settings.

Description:
REFERENCE TO RELATED CASE 
       [0001]    The present application is based on and claims the benefit of U.S. patent application Ser. No. 13/083,912, filed Apr. 11, 2011, which is based on and claims the benefit of U.S. provisional patent application Ser. No. 61/441,113, filed Feb. 9, 2011, the content of which is hereby incorporated by reference in its entirety. 
     
    
     BACKGROUND 
       [0002]    Multichannel controllers are commonly used to control a wide variety of systems. For example, a multichannel controller can be used to control a pan and tilt camera system. In such a case, one channel of the multichannel controller may be used to control pan motion of the pan and tilt camera system, and another channel of the multichannel controller may be used to control tilt motion of the pan and tilt camera system. One method of providing multichannel control has included using controllers with physical joysticks. Positioning of the physical joysticks causes signals to be sent to the system being controlled. 
       SUMMARY 
       [0003]    An aspect of the disclosure relates to multichannel device controller. In one embodiment, a multichannel device controller includes a plurality of user selectable control modes for controlling a multichannel device and a plurality of user configurable settings for adjusting parameters associated with the plurality of user selectable control modes. A touchscreen displays a user interface corresponding to a selected one of plurality of user selectable control modes and receives user input indicative of a command to send to the multichannel device. A processor generates the command to send to the multichannel device based at least in part on the user input and the plurality of user configurable settings. 
         [0004]    These and various other features and advantages that characterize the claimed embodiments will become apparent upon reading the following detailed description and upon reviewing the associated drawings. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0005]      FIG. 1  is a multichannel controller implemented using a handheld device. 
           [0006]      FIG. 2  is a control mode selector user interface of a multichannel controller. 
           [0007]      FIG. 3  is a touchpad control mode user interface of a multichannel controller. 
           [0008]      FIG. 4  is a joystick control mode user interface of a multichannel controller. 
           [0009]      FIG. 5  is a trackball control mode user interface of a multichannel controller. 
           [0010]      FIG. 6  is a touchpad/sliders combination control mode user interface of a multichannel controller. 
           [0011]      FIG. 7  is a touchpad/wheels combination control mode user interface of a multichannel controller. 
           [0012]      FIG. 8  is a joystick/wheels combination control mode user interface of a multichannel controller. 
           [0013]      FIG. 9  is a trackball/sliders combination control mode user interface of a multichannel controller. 
           [0014]      FIG. 10  is a orientation selector user interface of a multichannel controller. 
           [0015]      FIG. 11  is an inverted axis selector user interface of a multichannel controller. 
           [0016]      FIG. 12  is a maximum rotational speed selector user interface of a multichannel controller. 
           [0017]      FIG. 13-1  is a sensitivity selector user interface of a multichannel controller. 
           [0018]      FIG. 13-2  is a custom sensitivity user interface of a multichannel controller. 
           [0019]      FIG. 14  is a position lock user interface of a multichannel controller. 
           [0020]      FIG. 15  is a rotation lock user interface of a multichannel controller. 
           [0021]      FIG. 16  is an accelerometer selector user interface of a multichannel controller. 
           [0022]      FIGS. 17-1 ,  17 - 2 ,  17 - 3 , and  17 - 4  are user interfaces of a multichannel controller associated with managing user profiles. 
           [0023]      FIGS. 18-1 ,  18 - 2 ,  18 - 3 , and  18 - 4  are user interfaces of a multichannel controller associated with managing predefined motions. 
           [0024]      FIG. 19  is an operating environment of a multichannel controller. 
       
    
    
     DETAILED DESCRIPTION 
       [0025]    Embodiments of the present disclosure include multichannel controllers. In certain embodiments, multichannel controllers are used to control motion of pan and tilt camera systems. Embodiments are not however limited to any particular setting. Those skilled in the art will appreciate that although some embodiments are described in the context of pan and tilt camera systems, that embodiments are not limited to pan and tilt systems and can be used in other settings. Additionally, the present disclosure presents several examples of user interfaces that can be used to implement multichannel controllers. Those skilled in the art will appreciate that embodiments are not limited to the specific user interfaces shown in the figures and may include any one or more combination of features shown in the example interfaces. 
         [0026]    Embodiments of multichannel controllers are implemented using any suitable computing device. In one configuration, a controller is implemented using a smart phone such as an Android based phone or an iPhone. Alternatively, a controller can be implemented using a specially chosen device. 
         [0027]    In one embodiment, a multichannel controller sends signals to pan and tilt motors to control pan and tilt motions of a camera. In one configuration, each motor is capable of receiving a signal that indicates a direction of rotation (e.g. clockwise or counterclockwise) and a speed of rotation (e.g. 0-100% of the maximum rotational speed of the motor). 
         [0028]      FIG. 1  shows a handheld device  100  that is used to implement a multichannel controller. Handheld device  100  includes a touchscreen  102  that displays user interfaces of the controller. Each of the user interfaces includes a main portion  104  and an icons portion  106  (e.g. a scrollable icons taskbar). Icons portion  106  includes icons  108  that are used to configure various control modes and settings of a multichannel device. As will be described in greater detail below, the application may include more icons  108  than can be shown in icons portion  106 . In such a case, a user can scroll the icons to the left or right to view additional icons. For instance, in the example shown in  FIG. 1 , only five icons  108  are shown in icons portion  106 . A user can view icons to the left of the five icons  108  by touching any part of icons portion  106  and moving it to the right. Similarly, a user can view icons to the right of the five icons  108  by touching any part of icons portion  106  and moving it to the left. The left and right motion capability of icons portion  106  is represented by arrow  110 . 
         [0029]    One of the icons  108  is a Control Mode Selector icon. Upon the Control Mode Selector icon being selected (e.g. by being touched), a Control Mode Selector interface is displayed in the main portion  104  of the user interface.  FIG. 2  shows one example of a Control Mode Selector interface  200 . Interface  200  includes a touchpad icon  202 , a joystick icon  204 , a trackball icon  206 , a touchpad/slider icon  208 , a touchpad/wheels icon  210 , a joystick/wheels icon  212 , and a trackball/sliders icon  214 . Selection of one of icons  202 ,  204 ,  206 ,  208 ,  210 ,  212 , or  214  puts the controller into the corresponding control mode. An optional confirmation step may be implemented after selection of one the icons. For instance, upon joystick icon  204  being selected, a window may be displayed that states “Do you want to enter into the Joystick Control Mode? Yes/No.” The user can select “Yes” to enter the joystick control mode, or select “No” to return to the Control Mode Selector interface  200 . 
         [0030]      FIG. 3  shows an example of a controller in a touchpad control mode (e.g. after selecting touchpad icon  202  in  FIG. 2 ). In the touchpad control mode, main portion  104  of the user interface is one solid color (e.g. white). Alternatively, main portion  104  may receive and display video from the camera in the pan and tilt system. A user is able to control the motors of the pan and tilt system by making touch gestures in the main portion  104 . Left-to-right and right-to-left touch gestures send signals to the pan motor to rotate, and up-to-down and down-to-up touch gestures send signals to the tilt motor to rotate. The rotational speed of the motors is dependent upon the speed of the touch gesture. For instance, a quick touch gesture sends a signal to the motor to rotate quickly, and a slow touch gesture sends a signal to the motor to rotate slowly. If a touch gesture includes a combination of up/down and left/right motions (e.g. a diagonal touch gesture), signals are sent to both the pan and tilt motors. In an embodiment, the controller is also able to control a zoom (e.g. optical or digital magnification of the camera). For instance, a user can make touch gestures associated with making an object larger to zoom in on an object, and can make touch gestures associated with making an object smaller to zoom out on an object. Additionally, a user can set the control mode of the controller to moving object track control mode. For instance, a user can select a moving object being displayed in main portion  104 , and the controller controls the camera to keep the moving object within the camera&#39;s field of view. 
         [0031]      FIG. 4  shows an example of a controller in a joystick control mode (e.g. after selecting joystick icon  204  in  FIG. 2 ). In the joystick control mode, main portion  104  of the user interface includes a joystick icon  402 . A user is able to move the position of the joystick icon  402  by touching the icon and moving it in any direction (e.g. up, down, left, right, diagonally). The joystick icon  402  returns to its original position in the middle of main portion  104  when the user releases touch of the icon. In the joystick control mode, any left or right movement of the joystick icon sends a signal to rotate the pan motor, and any up or down movement of the joystick sends a signal to rotate the tilt motor. A combination of left/right and up/down movements (e.g. moving the joystick icon diagonally) sends signals to both the pan and tilt motors. The rotational speed of the motors is dependent upon the distance the joystick icon  402  is moved from its center/home position. For instance, moving the joystick icon  402  a small distance from its home position causes slow rotation, while moving the joystick icon  402  a greater distance from its home position causes faster rotation. In the joystick control mode, main portion  104  of the user interface is one solid color (e.g. white). Alternatively, main portion  104  may receive and display video from the camera in the pan and tilt system. In such a case, joystick icon  204  may be presented in transparent or translucent graphics such that a user can see video from the camera behind the joystick icon. 
         [0032]      FIG. 5  shows an example of a controller in a trackball control mode (e.g. after selecting trackball icon  206  in  FIG. 2 ). In the trackball control mode, main portion  104  of the user interface include a trackball icon  502 . A user is able to simulate rotating trackball icon  502  by touching the icon and moving it in any direction (e.g. up, down, left, right, diagonally). The trackball icon  502  has simulated momentum. For instance, the trackball icon  502  will continue “rotating” for a brief period of time after the user has released touch of the icon  502 . In the trackball control mode, any left or right rotation of the trackball icon sends a signal to rotate the pan motor, and any up or down rotation of the trackball sends a signal to rotate the tilt motor. A combination of up/down and left/right rotations (e.g. rotating the trackball diagonally) sends signals to both the pan and tilt motors. The rotational speed of the motors is dependent upon the rotational speed of the trackball. Fast rotation of the trackball icon  502  sends signals to the motors to rotate quickly, and slow rotation of the trackball icon  502  sends signals to the motors to rotate slowly. In the trackball control mode, main portion  104  of the user interface is one solid color (e.g. white). Alternatively, main portion  104  may receive and display video from the camera in the pan and tilt system. In such a case, trackball icon  502  may be presented in transparent or translucent graphics such that a user can see video from the camera behind the trackball icon. 
         [0033]      FIG. 6  shows an example of a controller in a touchpad/sliders combination control mode (e.g. after selecting touchpad/sliders icon  208  in  FIG. 2 ). In the touchpad/sliders combination control mode, main portion  104  of the user interface includes a touchpad section  602 , a pan slider section  604 , and a tilt slider section  606 . Touchpad section  602  functions in the same manner as the touchpad mode shown in  FIG. 3 . For instance, touchpad section  602  either shows a solid color or shows video from the pan and tilt system camera. A user can send signals to rotate the pan and tilt motors by making touch gestures in the touchpad section  602 . 
         [0034]    Pan slider section  604  includes a moveable slider icon  608  that is able to be moved left and right within slider slot  610 . Tilt slider section  606  includes a moveable slider icon  612  that is able to be moved up and down within slider slot  614 . Movement of the pan slider icon  608  sends signals to the pan motor, and movement of the tilt slider icon  612  sends signals to the tilt motor. The rotational speed of the motors is dependent on how far the slider icons are moved from their center/home positions. Moving a slider icon further away from its center/home position causes faster rotation than a smaller move away from the center/home position. Additionally, similar to the joystick icon in the joystick mode, slider icons  608  and  612  move back to their center/home positions when touch is released. 
         [0035]      FIG. 7  shows an example of a controller in a touchpad/wheels combination control mode (e.g. after selecting touchpad/wheels icon  210  in  FIG. 2 ). In the touchpad/wheels combination control mode, main portion  104  of the user interface includes a touchpad section  702 , a pan wheel icon  704 , and a tilt wheel icon  706 . Touchpad section  702  functions similarly to the touchpad modes shown in  FIGS. 3 and 6 . For instance, touchpad section  702  either shows a solid color or shows video from the pan and tilt system camera. A user can send signals to rotate the pan and tilt motors by making touch gestures in touchpad section  702 . 
         [0036]    Pan wheel icon  704  and tilt wheel icon  706  are able to be rotated in either direction. Rotation of pan wheel icon  704  sends signals to the pan motor to rotate, and rotation of tilt wheel icon  706  sends signals to the tilt motor to rotate. The speed and direction of rotation of the wheel icons determine the speed and direction of rotation of the pan and tilt motors. Fast rotation of the wheel icons sends signals to the motors to rotate quickly, and slower rotation of the wheel icons sends signals to the motors to rotate slower. The wheel icons have momentum such that the wheel icons will continue to rotate after a user has released touch of the icons. 
         [0037]      FIG. 8  shows an example of a controller in a joystick/wheels combination control mode (e.g. after selecting joystick/wheels icon  212  in  FIG. 2 ). In the joystick/wheels combination control mode, main portion  104  of the user interface includes a joystick icon  802 , a pan wheel icon  804 , and a tilt wheel icon  806 . Joystick icon  802  functions the same as joystick icon  402  in  FIG. 4 . Pan and tilt wheel icons  804  and  806  function the same as pan and tilt wheel icons  704  and  706  in  FIG. 7 . Similar to each of the other control mode user interfaces, in the joystick/wheels combination control mode, main portion  104  of the user interface is in one embodiment one solid color (e.g. white). Alternatively, main portion  104  may receive and display video from the camera in the pan and tilt system. In such a case, icons  802 ,  804 , and  806  may be presented in transparent or translucent graphics such that a user can see video from the camera behind the icons. 
         [0038]      FIG. 9  shows an example of a controller in a trackball/sliders combination control mode (e.g. after selecting trackball/sliders icon  214  in  FIG. 2 ). In the trackball/sliders combination control mode, main portion  104  of the user interface includes a trackball icon  902 , a pan slider icon  904 , and a tilt slider icon  906 . Trackball icon  902  functions the same as trackball icon  502  in  FIG. 5 . Pan and tilt slider icons  904  and  906  function the same as pan and tilt slider icons  604  and  606  in  FIG. 6 . Again, the background of the user interface may be one solid color or may display video from the camera. In such a case, icons  902 ,  904 , and  906  may be presented in transparent or translucent graphics such that a user can see camera video behind the icons. 
         [0039]    Another one of the icons  108  in icons portion  106  in  FIG. 1  is an Orientation Selector icon.  FIG. 10  shows an example of an Orientation Selector user interface  1002  that is displayed after the Orientation Selector icon is selected. Interface  1002  includes four icons  1004 ,  1006 ,  1008 , and  1010  that represent the four orientations that the controller may be positioned in (e.g. device bottom down, bottom to the right, bottom up, and bottom to the left). Selection of one of icons  1004 ,  1006 ,  1008 , or  1010  determines the orientation that the controller presents the user interfaces. 
         [0040]      FIG. 11  shows an example of an Inverted Axis Selector user interface  1102  that is displayed after an Inverted Axis Selector icon  108  is selected from icons portion  106  in  FIG. 1 . Interface  1102  includes a pan icon  1104  that can be toggled between on and off positions to invert control of the pan axis, and a tilt icon  1106  that can be toggled between on and off positions to invert control of the tilt axis. Toggling either icon  1104  or  1106  causes the direction of rotation for the axis to be reversed. 
         [0041]      FIG. 12  shows an example of a Maximum Rotational Speed Selector user interface  1202  that is displayed after a Maximum Rotational Speed Selector icon  108  is selected from icons portion  106  in  FIG. 1 . Interface  1202  includes four icons  1204 ,  1206 ,  1208 , and  1210  that can be set between 0 and 100% to set the maximum rotational speed of the motors. 
         [0042]      FIG. 13-1  shows an example of a Sensitivity Selector user interface  1302  that is displayed after a Sensitivity Selector icon  108  is selected from icons portion  106  in  FIG. 1 . Interface  1302  includes a pan axis portion  1306  and a tilt axis portion  1308 . Each portion  1306  and  1308  includes three radio buttons. A user can set the sensitivity of each axis to linear, non-linear, or custom. Additionally, a user can select edit buttons  1310  and  1312  to edit the customized sensitivity.  FIG. 13-2  shows an example of a Custom Sensitivity user interface  1322  that is displayed after one of the edit buttons  1310  or  1312  is selected. User interface  1322  includes a user editable sensitivity response line  1324 . A user can move response line  1324  up and down along the entire length of the line to set a custom sensitivity response. User interface  1322  includes a cancel button  1326  and a save button  1328 . A user can press the cancel button  1326  to undo any changes to response line  1324  and return to the previous screen, and a user can press the save button  1328  to save changes to response line  1324  and return to the previous screen. 
         [0043]      FIG. 14  shows an example of a Position Lock user interface  1402  that is displayed after a Position Lock icon  108  is selected from icons portion  106  in  FIG. 1 . Interface  1402  includes a pan position lock icon  1404  and a tilt position lock icon  1406 . Toggling either icon  1404  or  1406  from the off to the on position locks the corresponding motor at its current position. 
         [0044]      FIG. 15  shows an example of a Rotation Lock user interface  1502  that is displayed after a Rotation Lock icon  108  is selected from icons portion  106  in  FIG. 1 . Interface  1502  includes a pan axis portion  1504  and a tilt axis portion  1506 . Each axis portion includes an icon to toggle the rotation lock from the off to the on position. Each axis portion also includes a radio button to indicate the direction of rotation and a speed selector to select from 0 to 100% of the maximum rotation speed. 
         [0045]      FIG. 16  shows an example of an Accelerometer Selector user interface  1602  that is displayed after an Accelerometer Selector icon  108  is selected from icons portion  106  in  FIG. 1 . Interface  1602  includes a pan icon  1604  and a tilt icon  1606 . Toggling pan icon  1604  from the off to the on position causes rotation of the pan motor to be controlled by accelerometer feedback, and toggling icon  1606  from the off to the on position causes rotation of the tilt motor to be controlled by accelerometer feedback. In accelerometer control mode, the rotational speed of the motors is dependent upon the angle of the controller from a center/home position. 
         [0046]      FIGS. 17-1 ,  17 - 2 ,  17 - 3 , and  17 - 4  show examples of user interfaces associated with managing user profiles.  FIG. 17-1  shows a Manage Profiles user interface  1702  that is displayed after a Manage Profile icon  108  is selected from icons portion  106  in  FIG. 1 . Interface  1702  includes a save profile icon  1704 , a load profile icon  1706 , and a delete profile icon  1708 . Selection of save profile icon  1704  causes user interface  1712  in  FIG. 17-2  to be displayed. In interface  1712 , a user can save the current controller settings as a new profile by selecting the yes radio button  1714  or save the current controller settings as an existing profile by selecting the yes radio button  1716 . If the save as a new profile button  1714  is selected, the user is presented with a screen that enables the user to type in a name of the new profile. If the save as existing profile button  1716  is selected, the user is presented with a screen that enables the user to select one of the previously saved profiles. 
         [0047]      FIG. 17-3  shows a Load Saved Profile user interface  1722  that is displayed upon a user selecting the load profile icon  1706  in  FIG. 17-1 . Interface  1722  shows icons  1724  that represent the previously save profiles. Selection of one of icons  1724  loads the controller with the previously saved settings. A confirmation step is optionally displayed prior to changing the controller settings. 
         [0048]      FIG. 17-4  shows a Delete Saved Profile user interface  1732  that is displayed upon a user selecting the delete profile icon  1708  in  FIG. 17-1 . Interface  1732  shows icons  1734  that represent the previously saved profiles. Selection of one of icons  1734  deletes the previously saved profile. A confirmation step is optionally displayed prior to deleting the selected profile. 
         [0049]      FIGS. 18-1 ,  18 - 2 ,  18 - 3 , and  18 - 4  show examples of user interfaces associated with managing predefined motions.  FIG. 18-1  shows a Manage Motions user interface  1802  that is displayed after a Manage Motion icon  108  is selected from icons portion  106  in  FIG. 1 . Interface  1802  includes a record motion icon  1804 , a perform saved motion icon  1806 , and a delete saved motion icon  1808 . Selection of record motion icon  1804  causes user interface  1812  in  FIG. 18-2  to be displayed. In interface  1812 , a user can record a motion by toggling icon  1814  to the on position, and a user can enter a name for the recorded motion be selecting icon  1816 . In one embodiment, a user is able to record a motion by drawing a shape on the user interface. For instance, a user can draw and record a spiral motion, a circle, a line, a rectangle, or any other shape. The controller illustratively records both the shape of the drawing and the speed at which each portion of the shape is drawn. The controller translates the shape and speed into control commands for the multichannel device. For example, slowly drawn portions cause the multichannel device to rotate more slowly, and quickly drawn portions cause the multichannel device to rotate more quickly. 
         [0050]      FIG. 18-3  shows a Perform Saved Motion user interface  1822  that is displayed after the Perform Saved Motion icon  1806  in  FIG. 18-1  is selected. Interface  1822  includes icons  1824  that correspond to previously recorded/saved motions. Selection of one of icons  1824  causes the motors to perform the previously recorded/saved motion. 
         [0051]      FIG. 18-4  shows a Delete Save Motion user interface  1832  that is displayed after the Delete Saved Motion icon  1808  in  FIG. 18-1  is selected. Interface  1832  includes icons  1834  that correspond to previously recorded/saved motions. Selection of one of icons  1834  causes the selected motion to be deleted. A confirmation step is optionally displayed prior to deleting the motion. 
         [0052]      FIG. 19  shows one illustrative operating environment of a multichannel controller  1902 . Multichannel controller illustratively includes a touchscreen  1904 , input keys  1906 , a controller/processor  1908 , memory  1910 , a communications module/communications interface  1912 , and a housing/case  1914 . Touchscreen  1904  illustratively includes any type of single touch or multitouch screen (e.g. capacitive touchscreen, vision based touchscreen, etc.). Touchscreen  1904  is able to detect a user&#39;s finger, stylus, etc. contacting touchscreen  1904  and generates input data (e.g. x and y coordinates) based on the detected contact. Input keys  1906  include buttons or other mechanical devices that a user is able to press or otherwise actuate to input data. For instance, input keys  1906  may include a home button, a back button, 0-9 number keys, a QWERTY keyboard, etc. Memory  1910  includes volatile, non-volatile or a combination of volatile and non-volatile memory. Memory  1910  may be implemented using more than one type of memory. For example, memory  1910  may include any combination of flash memory, magnetic hard drives, RAM, etc. Memory  1910  stores the computer executable instructions that are used to implement the multichannel controllers. Memory  1910  also stores user saved data such as programmed maneuvers or profile settings. Controller/processor  1908  can be implemented using any type of controller/processor (e.g. ASIC, RISC, ARM, etc.) that can process user inputs and the stored instructions to generate commands for controlling systems such as, but not limited to, pan and tilt camera systems. The generated commands, etc. are sent to communications module/communications interface  1914  that transmits the commands to the controlled systems. Finally with respect to multichannel controller  1902 , the controller housing  1914  can be any suitable housing. In one embodiment, housing  1914  has a form factor such that controller  1902  is able to fit within a user&#39;s hand. Housing  1914  may however be larger (e.g. tablet sized) and is not limited to any particular form factor. 
         [0053]    As is shown in  FIG. 19 , multichannel controller optionally communicates (e.g. wirelessly or wired) to a command translation unit  1920 . Command translation unit  1920  converts or transforms commands received from multichannel controller  1902  into the format that can be processed by the systems being controlled. It should be noted however that not all implementations include a command translation unit  1920 , and that in other embodiments, multichannel controller  1902  instead directly sends commands to the systems being controlled. 
         [0054]      FIG. 19  shows multichannel controller  1902  controlling N systems  1932 ,  1934 , and  1936 . In an embodiment, multichannel controller  1902  can control any number of systems (e.g. 1, 2, 3, 4 etc.). A user is illustratively able to choose which system is being controlled by selecting the system from a user interface. For instance, controller  1902  illustratively includes a user interface that shows the user all of the systems that can be controlled (e.g. represents each system as a separate icon), and the user selects one of the systems. Alternatively, in certain embodiments, a user is able to control multiple systems at the same time. For example, in one embodiment, controller  1902  is able to control systems  1932 ,  1934 , and  1936  at variable levels of autonomy (e.g. manual, semi-autonomous, or fully autonomous). Controller  1902  is able to control more than one system at a time and is able to control the systems at different levels of autonomy. One controlled system may for instance be performing a programmed maneuver or tracking an object, while another system may be in fully manual control mode. 
         [0055]    In an embodiment, multichannel controller  1902  is able to control systems  1932 ,  1934 , and  1936  in either an open loop mode or in a closed loop mode. In open loop mode, controller  1902  does not receive feedback from the controlled systems. For instance, controller  1902  does not necessarily know the position, speed, etc. of the controlled systems. However, in closed loop mode, controller  1902  does receive feedback from one or more of the controlled systems. Controller  1902  may for instance receive feedback indicating a position (e.g. angular position), speed, etc. of a pan and/or tilt motor. In such cases, controller  1902  is able to use the feedback in generating new commands for the systems. For instance, a user may wish to set a speed, position, etc. of a controlled system. Controller  1902  illustratively receives feedback from the controlled system indicating its current speed, position, etc., and the controller adjusts the command signal based on the current speed, position, etc. and based on the speed, position, etc. that is intended/desired by a user. 
         [0056]    Finally, it is to be understood that even though numerous characteristics and advantages of various embodiments have been set forth in the foregoing description, together with details of the structure and function of various embodiments, this detailed description is illustrative only, and changes may be made in detail, especially in matters of structure and arrangements of parts within the principles of the present disclosure to the full extent indicated by the broad general meaning of the terms in which the appended claims are expressed. In addition, although certain embodiments described herein are directed to pan and tilt systems, it will be appreciated by those skilled in the art that the teachings of the disclosure can be applied to other types of multichannel control systems, without departing from the scope and spirit of the disclosure.