ros2aria/config/rosbot_sensors_foxglove.json

474 lines
14 KiB
JSON

{
"configById": {
"Plot!gjvhbp": {
"paths": [
{
"value": "/range/fl.range",
"enabled": true,
"timestampMethod": "receiveTime"
},
{
"value": "/range/rl.range",
"enabled": true,
"timestampMethod": "receiveTime"
},
{
"value": "/range/fr.range",
"enabled": true,
"timestampMethod": "receiveTime"
},
{
"value": "/range/rr.range",
"enabled": true,
"timestampMethod": "receiveTime"
}
],
"minYValue": -0.039230484541325744,
"maxYValue": 1,
"showXAxisLabels": true,
"showYAxisLabels": true,
"showLegend": true,
"legendDisplay": "floating",
"showPlotValuesInLegend": false,
"isSynced": true,
"xAxisVal": "timestamp",
"sidebarDimension": 240,
"foxglovePanelTitle": "Plot",
"followingViewWidth": 30
},
"Plot!1u5bb0v": {
"paths": [
{
"value": "/imu_broadcaster/imu.orientation.w",
"enabled": true,
"timestampMethod": "receiveTime"
},
{
"value": "/imu_broadcaster/imu.orientation.x",
"enabled": true,
"timestampMethod": "receiveTime"
},
{
"value": "/imu_broadcaster/imu.orientation.y",
"enabled": true,
"timestampMethod": "receiveTime"
},
{
"value": "/imu_broadcaster/imu.orientation.z",
"enabled": true,
"timestampMethod": "receiveTime"
}
],
"minYValue": -1.1,
"maxYValue": 1.1,
"showXAxisLabels": true,
"showYAxisLabels": true,
"showLegend": true,
"legendDisplay": "floating",
"showPlotValuesInLegend": false,
"isSynced": true,
"xAxisVal": "timestamp",
"sidebarDimension": 240,
"foxglovePanelTitle": "Plot",
"followingViewWidth": 30
},
"Tab!2qhku9u": {
"activeTabIdx": 0,
"tabs": [
{
"title": "Ranges Plots",
"layout": "Plot!gjvhbp"
},
{
"title": "IMU Plots",
"layout": "Plot!1u5bb0v"
}
]
},
"3D!40jejke": {
"cameraState": {
"perspective": true,
"distance": 4.7565377051017865,
"phi": 0.5121483430698642,
"thetaOffset": 89.80364880250498,
"targetOffset": [
0.04217571585974451,
-0.03971452594915587,
1.5648103050465003e-17
],
"target": [
0,
0,
0
],
"targetOrientation": [
0,
0,
0,
1
],
"fovy": 45,
"near": 0.5,
"far": 5000
},
"followMode": "follow-pose",
"scene": {
"transforms": {
"axisScale": 0.4499999999999996,
"labelSize": 0.013834613718625963
},
"enableStats": true,
"ignoreColladaUpAxis": false,
"syncCamera": false
},
"transforms": {
"frame:base_link": {
"visible": false
},
"frame:body_link": {
"visible": false
},
"frame:cover_link": {
"visible": false
},
"frame:imu_link": {
"visible": false
},
"frame:camera_link": {
"visible": false
},
"frame:fl_range": {
"visible": false
},
"frame:fr_range": {
"visible": false
},
"frame:rl_range": {
"visible": false
},
"frame:rr_range": {
"visible": false
},
"frame:fl_wheel_link": {
"visible": true
},
"frame:fr_wheel_link": {
"visible": true
},
"frame:rl_wheel_link": {
"visible": true
},
"frame:rr_wheel_link": {
"visible": true
},
"frame:slamtec_rplidar_a2_link": {
"visible": false
},
"frame:laser": {
"visible": false
},
"frame:orbbec_astra_link": {
"visible": false
},
"frame:depth": {
"visible": false
},
"frame:odom": {
"visible": false
}
},
"topics": {
"/scan": {
"visible": true,
"colorField": "range",
"colorMode": "flat",
"colorMap": "turbo",
"pointSize": 8,
"flatColor": "#f90000"
},
"/robot_description": {
"visible": false
}
},
"layers": {
"e827a6dc-875b-448a-8475-5497577c2e1b": {
"visible": true,
"frameLocked": true,
"label": "URDF",
"instanceId": "e827a6dc-875b-448a-8475-5497577c2e1b",
"layerId": "foxglove.Urdf",
"url": "http://{{.Host}}:{{env "FOXGLOVE_PORT"}}/rosbot.urdf",
"order": 1
},
"b2c64820-a936-4f65-82b5-7a04ef902009": {
"visible": true,
"frameLocked": true,
"label": "Grid",
"instanceId": "b2c64820-a936-4f65-82b5-7a04ef902009",
"layerId": "foxglove.Grid",
"size": 10,
"divisions": 100,
"lineWidth": 1,
"color": "#248eff",
"position": [
0,
0,
0
],
"rotation": [
0,
0,
0
],
"order": 2
}
},
"publish": {
"type": "point",
"poseTopic": "/move_base_simple/goal",
"pointTopic": "/clicked_point",
"poseEstimateTopic": "/initialpose",
"poseEstimateXDeviation": 0.5,
"poseEstimateYDeviation": 0.5,
"poseEstimateThetaDeviation": 0.26179939
},
"foxglovePanelTitle": "Lidar View"
},
"RosOut!b0toow": {
"searchTerms": [],
"minLogLevel": 2
},
"Teleop!yh7wcv": {
"topic": "/cmd_vel",
"publishRate": 1,
"upButton": {
"field": "linear-x",
"value": 0.19754204525471783
},
"downButton": {
"field": "linear-x",
"value": -0.20000000000000015
},
"leftButton": {
"field": "angular-z",
"value": 1
},
"rightButton": {
"field": "angular-z",
"value": -1
},
"foxglovePanelTitle": "Diff Drive"
},
"ImageViewPanel!40iocf4": {
"cameraTopic": "/camera/color/image_raw/compressed",
"enabledMarkerTopics": [],
"mode": "fit",
"pan": {
"x": 0,
"y": 0
},
"rotation": 0,
"synchronize": true,
"transformMarkers": false,
"zoom": 1,
"foxglovePanelTitle": "Astra Compressed Image"
},
"Gauge!4jffafa": {
"path": "/battery.voltage",
"minValue": 9.8,
"maxValue": 12.6,
"colorMap": "turbo",
"colorMode": "colormap",
"gradient": [
"#0000ff",
"#ff00ff"
],
"reverse": false,
"foxglovePanelTitle": "Battery"
},
"Indicator!11kizr9": {
"path": "/battery.voltage",
"style": "background",
"fallbackColor": "#000000",
"fallbackLabel": "Ok",
"rules": [
{
"operator": "<",
"rawValue": "10.8",
"color": "#ff0000",
"label": "Plug charger!"
}
],
"foxglovePanelTitle": "Plug Charger Info"
},
"Plot!4dl4s92": {
"paths": [
{
"value": "/battery.voltage",
"enabled": true,
"timestampMethod": "receiveTime"
}
],
"minYValue": 9.482842712474614,
"maxYValue": 13,
"showXAxisLabels": true,
"showYAxisLabels": true,
"showLegend": true,
"legendDisplay": "floating",
"showPlotValuesInLegend": true,
"isSynced": true,
"xAxisVal": "timestamp",
"sidebarDimension": 240,
"foxglovePanelTitle": "Plot",
"followingViewWidth": 60
},
"Publish!1f6cruz": {
"topicName": "/led/left",
"datatype": "std_msgs/msg/Bool",
"buttonText": "LED1 Turn ON",
"buttonTooltip": "",
"buttonColor": "#00A871",
"advancedView": false,
"value": "{\n \"data\": true\n}",
"foxglovePanelTitle": "LED1 Turn ON"
},
"Publish!1wozu40": {
"topicName": "/led/right",
"datatype": "std_msgs/msg/Bool",
"buttonText": "LED2 Turn ON",
"buttonTooltip": "",
"buttonColor": "#00A871",
"advancedView": false,
"value": "{\n \"data\": true\n}",
"foxglovePanelTitle": "LED2 Turn ON"
},
"Indicator!2z34jcy": {
"path": "/button/left.data",
"style": "background",
"fallbackColor": "#ff0000",
"fallbackLabel": "Released",
"rules": [
{
"operator": "=",
"rawValue": "true",
"color": "#26c578",
"label": "Pressed"
}
],
"foxglovePanelTitle": "Left Button"
},
"Publish!3cb71c0": {
"topicName": "/led/left",
"datatype": "std_msgs/msg/Bool",
"buttonText": "LED1 Turn OFF",
"buttonTooltip": "",
"buttonColor": "#a80000",
"advancedView": false,
"value": "{\n \"data\": false\n}",
"foxglovePanelTitle": "LED1 Turn OFF"
},
"Publish!46onm9c": {
"topicName": "/led/right",
"datatype": "std_msgs/msg/Bool",
"buttonText": "LED2 Turn OFF",
"buttonTooltip": "",
"buttonColor": "#a80000",
"advancedView": false,
"value": "{\n \"data\": false\n}",
"foxglovePanelTitle": "LED2 Turn OFF"
},
"Indicator!1hywfa1": {
"path": "/button/right.data",
"style": "background",
"fallbackColor": "#ff0000",
"fallbackLabel": "Released",
"rules": [
{
"operator": "=",
"rawValue": "true",
"color": "#26c578",
"label": "Pressed"
}
],
"foxglovePanelTitle": "Left Button"
}
},
"globalVariables": {
"globalVariable": 7
},
"userNodes": {
"f5206e1d-deee-4f90-a03e-f561fbb9a7dd": {
"sourceCode": "// The ./types module provides helper types for your Input events and messages.\nimport { Input, Message } from \"./types\";\n\n// Your script can output well-known message types, any of your custom message types, or\n// complete custom message types.\n//\n// Use `Message` to access your data source types or well-known types:\n// type Twist = Message<\"geometry_msgs/Twist\">;\n//\n// Conventionally, it's common to make a _type alias_ for your script's output type\n// and use that type name as the return type for your script function.\n// Here we've called the type `Output` but you can pick any type name.\ntype Output = {\n hello: string;\n};\n\n// These are the topics your script \"subscribes\" to. Studio will invoke your script function\n// when any message is received on one of these topics.\nexport const inputs = [\"/input/topic\"];\n\n// Any output your script produces is \"published\" to this topic. Published messages are only visible within Studio, not to your original data source.\nexport const output = \"/studio_script/output_topic\";\n\n// This function is called with messages from your input topics.\n// The first argument is an event with the topic, receive time, and message.\n// Use the `Input<...>` helper to get the correct event type for your input topic messages.\nexport default function script(event: Input<\"/input/topic\">): Output {\n return {\n hello: \"world!\",\n };\n};",
"name": "f5206e1d"
},
"1a9e6183-d4b1-47dd-a024-efc14ab90b6b": {
"sourceCode": "// This example shows how to subscribe to multiple input topics.\n//\n// NOTE:\n// User Scripts can subscribe to multiple input topics, but can only publish on a single topic.\n\nimport { Input } from \"./types\";\n\ntype Output = { topic: string };\ntype GlobalVariables = { id: number };\n\n// List all the input topics in the `input` array\nexport const inputs = [\"/input/topic\", \"/input/another\"];\nexport const output = \"/studio_script/output_topic\";\n\n// Make an InputEvent type alias. Since our node will get a message from either input topic, we need to enumerate the topics.\ntype InputEvent = Input<\"/input/topic\"> | Input<\"/input/another\">;\n\nexport default function node(event: InputEvent, globalVars: GlobalVariables): Output {\n // Remember that your node will get messages on each topic, so you\n // need to check each event's topic to know which fields are available on the message.\n switch (event.topic) {\n case \"/input/topic\":\n // topic specific input logic\n // Our message fields are specific to our topic message\n break;\n case \"/input/another\":\n // another specific logic\n break;\n }\n\n // Nodes can only output one type of message regardless of the inputs\n // Here we echo back the input topic as an example.\n return {\n topic: event.topic,\n };\n};\n",
"name": "1a9e6183"
}
},
"playbackConfig": {
"speed": 1
},
"layout": {
"first": {
"direction": "row",
"first": "Tab!2qhku9u",
"second": {
"first": "3D!40jejke",
"second": {
"first": "RosOut!b0toow",
"second": "Teleop!yh7wcv",
"direction": "column"
},
"direction": "row",
"splitPercentage": 57.03330110757996
},
"splitPercentage": 30.5849582172702
},
"second": {
"first": "ImageViewPanel!40iocf4",
"second": {
"first": {
"first": {
"first": "Gauge!4jffafa",
"second": "Indicator!11kizr9",
"direction": "column"
},
"second": "Plot!4dl4s92",
"direction": "row"
},
"second": {
"first": {
"first": "Publish!1f6cruz",
"second": {
"first": "Publish!1wozu40",
"second": "Indicator!2z34jcy",
"direction": "row",
"splitPercentage": 30.461538461538503
},
"direction": "row",
"splitPercentage": 23.167848699763567
},
"second": {
"first": {
"first": "Publish!3cb71c0",
"second": "Publish!46onm9c",
"direction": "row",
"splitPercentage": 49.49494949494945
},
"second": "Indicator!1hywfa1",
"direction": "row",
"splitPercentage": 46.808510638297854
},
"direction": "column"
},
"direction": "row",
"splitPercentage": 57.106729218589656
},
"direction": "row",
"splitPercentage": 30.63012301119672
},
"direction": "column",
"splitPercentage": 67.44897959183673
}
}