<> <> ''ROS Software Maintainer: [[http://wiki.ros.org/ROBOTIS|ROBOTIS]]'' == ROBOTIS e-Manual == * [[http://emanual.robotis.com/docs/en/platform/op3/introduction/|ROBOTIS e-Manual for ROBOTIS-OP3]] == ROS API == {{{ #!clearsilver CS/NodeAPI node.0 { name=op3_camera_setting_tool pub{ 0{ name= op3_camera/camera_params type= op3_camera_setting_tool/CameraParams desc= message about the current parameters of the usb camera } } sub{ 0{ name= op3_camera/set_param type= op3_camera_setting_tool/V4lParameter desc= single parameter to set the usb camera } 1{ name= op3_camera/set_params type= op3_camera_setting_tool/V4lParameters desc= multi parameters to set the usb camera } 2{ name= op3_camera/param_command type= std_msgs/String desc= parameter setting command(save or reset) } } srv{ 0{ name= op3_camera/set_camera_params type= op3_camera_setting_tool/SetParameters desc= service to set the parameters to usb camera } 1{ name= op3_camera/get_camera_params type= op3_camera_setting_tool/GetParameters desc= service to get the current parameters of usb camera } } param{ 0{ name= ~yaml_path type= string default= "" desc= init parameters for usb camera } 1{ name= video_device type= string default= /dev/video0 desc= device name of an usb camera for setting parameters } } } }}} ==== Dynamic reconfigure ==== * !CameraParams.cfg {{{ #---------------------------- parameter for usb camera -------------------------------# # Name , Type , Reconfiguration level # # , Description , Default , Min , Max # #-------------------------------------------------------------------------------------# gen.add("brightness" ,int_t ,0 ,"Brightness" ,128 ,0 ,255) gen.add("contrast" ,int_t ,0 ,"Contrast" ,128 ,0 ,255) gen.add("saturation" ,int_t ,0 ,"Saturation" ,128 ,0 ,255) gen.add("sharpness" ,int_t ,0 ,"Sharpness" ,128 ,0 ,255) gen.add("gain" ,int_t ,0 ,"Gain" ,0 ,0 ,255) gen.add("focus_auto" ,bool_t ,0 ,"Auto focus" ,False) gen.add("focus_absolute" ,int_t ,0 ,"Absolute Focus" ,-1 ,-1 ,255) exposure_auto_enum = gen.enum([gen.const("auto" ,int_t ,0 ,"Exposure Auto"), gen.const("manual" ,int_t ,1 ,"Exposure Manual"), gen.const("shutter_priority" ,int_t ,2 ,"Exposure : Shutter priority"), gen.const("aperture_priority" ,int_t ,3 ,"Exposure : Aperture priority")], "An enum to set size") gen.add("exposure_auto" ,int_t ,0 ,"Auto Exposure" ,3 ,0 ,3 ,edit_method=exposure_auto_enum) gen.add("exposure_absolute" ,int_t ,0 ,"Absolute Exposure" ,80 ,0 ,255) gen.add("white_balance_temperature_auto" ,bool_t ,0 ,"Auto White Balance" ,True) gen.add("white_balance_temperature" ,int_t ,0 ,"White Balance Temperature" ,4000 ,2000 ,6500) }}}