Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
T
tango
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Iterations
Wiki
Requirements
Jira issues
Open Jira
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Locked files
Build
Pipelines
Jobs
Pipeline schedules
Test cases
Artifacts
Deploy
Releases
Package registry
Container Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Code review analytics
Issue analytics
Insights
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
LOFAR2.0
tango
Commits
cfc0ce13
Commit
cfc0ce13
authored
3 years ago
by
Taya Snijder
Browse files
Options
Downloads
Patches
Plain Diff
updated small things
parent
544ceb95
No related branches found
Branches containing commit
No related tags found
Tags containing commit
1 merge request
!164
Resolve L2SS-334 "2021 10 21 replace streams with logger"
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
devices/clients/attribute_wrapper.py
+2
-2
2 additions, 2 deletions
devices/clients/attribute_wrapper.py
jupyter-notebooks/test_device.ipynb
+99
-21
99 additions, 21 deletions
jupyter-notebooks/test_device.ipynb
with
101 additions
and
23 deletions
devices/clients/attribute_wrapper.py
+
2
−
2
View file @
cfc0ce13
...
@@ -154,7 +154,7 @@ class attribute_wrapper(attribute):
...
@@ -154,7 +154,7 @@ class attribute_wrapper(attribute):
try
:
try
:
self
.
read_function
,
self
.
write_function
=
client
.
setup_attribute
(
self
.
comms_annotation
,
self
)
self
.
read_function
,
self
.
write_function
=
client
.
setup_attribute
(
self
.
comms_annotation
,
self
)
except
Exception
as
e
:
except
Exception
as
e
:
raise
Exception
(
"
Exception while setting
%s
attribute with annotation:
'
%s
'"
,
client
.
__class__
.
__name__
,
self
.
comms_annotation
)
from
e
raise
Exception
(
f
"
Exception while setting
{
client
.
__class__
.
__name__
}
attribute with annotation:
'
{
self
.
comms_annotation
}
'"
)
from
e
async
def
async_set_comm_client
(
self
,
client
):
async
def
async_set_comm_client
(
self
,
client
):
"""
"""
...
@@ -163,7 +163,7 @@ class attribute_wrapper(attribute):
...
@@ -163,7 +163,7 @@ class attribute_wrapper(attribute):
try
:
try
:
self
.
read_function
,
self
.
write_function
=
await
client
.
setup_attribute
(
self
.
comms_annotation
,
self
)
self
.
read_function
,
self
.
write_function
=
await
client
.
setup_attribute
(
self
.
comms_annotation
,
self
)
except
Exception
as
e
:
except
Exception
as
e
:
raise
Exception
(
"
Exception while setting
%s
attribute with annotation:
'
%s
'"
,
client
.
__class__
.
__name__
,
self
.
comms_annotation
)
from
e
raise
Exception
(
f
"
Exception while setting
{
client
.
__class__
.
__name__
}
attribute with annotation:
'
{
self
.
comms_annotation
}
'"
)
from
e
def
set_pass_func
(
self
):
def
set_pass_func
(
self
):
def
pass_func
(
value
=
None
):
def
pass_func
(
value
=
None
):
...
...
This diff is collapsed.
Click to expand it.
jupyter-notebooks/test_device.ipynb
+
99
−
21
View file @
cfc0ce13
...
@@ -2,7 +2,7 @@
...
@@ -2,7 +2,7 @@
"cells": [
"cells": [
{
{
"cell_type": "code",
"cell_type": "code",
"execution_count":
61
,
"execution_count":
37
,
"id": "waiting-chance",
"id": "waiting-chance",
"metadata": {},
"metadata": {},
"outputs": [],
"outputs": [],
...
@@ -13,17 +13,17 @@
...
@@ -13,17 +13,17 @@
},
},
{
{
"cell_type": "code",
"cell_type": "code",
"execution_count":
62
,
"execution_count":
38
,
"id": "moving-alexandria",
"id": "moving-alexandria",
"metadata": {},
"metadata": {},
"outputs": [],
"outputs": [],
"source": [
"source": [
"d=DeviceProxy(\"LTS/
SST
/1\")"
"d=DeviceProxy(\"LTS/
UNB2
/1\")"
]
]
},
},
{
{
"cell_type": "code",
"cell_type": "code",
"execution_count":
6
3,
"execution_count": 3
9
,
"id": "ranking-aluminum",
"id": "ranking-aluminum",
"metadata": {},
"metadata": {},
"outputs": [
"outputs": [
...
@@ -46,12 +46,14 @@
...
@@ -46,12 +46,14 @@
" d.on()\n",
" d.on()\n",
"state = str(d.state())\n",
"state = str(d.state())\n",
"if state == \"ON\":\n",
"if state == \"ON\":\n",
" print(\"Device is now in on state\")\n"
" print(\"Device is now in on state\")\n",
"else:\n",
" print(f\"Device is now in {state} state\")"
]
]
},
},
{
{
"cell_type": "code",
"cell_type": "code",
"execution_count":
68
,
"execution_count":
40
,
"id": "beneficial-evidence",
"id": "beneficial-evidence",
"metadata": {},
"metadata": {},
"outputs": [
"outputs": [
...
@@ -59,36 +61,112 @@
...
@@ -59,36 +61,112 @@
"name": "stdout",
"name": "stdout",
"output_type": "stream",
"output_type": "stream",
"text": [
"text": [
"packet_count_R [55]\n",
"['version_R', 'opcua_missing_attributes_R', 'UNB2TR_translator_busy_R', 'UNB2_DC_DC_48V_12V_IOUT_R', 'UNB2_DC_DC_48V_12V_TEMP_R', 'UNB2_DC_DC_48V_12V_VIN_R', 'UNB2_DC_DC_48V_12V_VOUT_R', 'UNB2_EEPROM_Serial_Number_R', 'UNB2_EEPROM_Unique_ID_R', 'UNB2_FPGA_DDR4_SLOT_TEMP_R', 'UNB2_FPGA_POL_CORE_IOUT_R', 'UNB2_FPGA_POL_CORE_TEMP_R', 'UNB2_FPGA_POL_CORE_VOUT_R', 'UNB2_FPGA_POL_ERAM_IOUT_R', 'UNB2_FPGA_POL_ERAM_TEMP_R', 'UNB2_FPGA_POL_ERAM_VOUT_R', 'UNB2_FPGA_POL_HGXB_IOUT_R', 'UNB2_FPGA_POL_HGXB_TEMP_R', 'UNB2_FPGA_POL_HGXB_VOUT_R', 'UNB2_FPGA_POL_PGM_IOUT_R', 'UNB2_FPGA_POL_PGM_TEMP_R', 'UNB2_FPGA_POL_PGM_VOUT_R', 'UNB2_FPGA_POL_RXGXB_IOUT_R', 'UNB2_FPGA_POL_RXGXB_TEMP_R', 'UNB2_FPGA_POL_RXGXB_VOUT_R', 'UNB2_FPGA_POL_TXGXB_IOUT_R', 'UNB2_FPGA_POL_TXGXB_TEMP_R', 'UNB2_FPGA_POL_TXGXB_VOUT_R', 'UNB2_FPGA_QSFP_CAGE_LOS_R', 'UNB2_FPGA_QSFP_CAGE_TEMP_R', 'UNB2_Front_Panel_LED_R', 'UNB2_Front_Panel_LED_RW', 'UNB2_I2C_bus_DDR4_error_R', 'UNB2_I2C_bus_error_R', 'UNB2_I2C_bus_FPGA_PS_error_R', 'UNB2_I2C_bus_PS_error_R', 'UNB2_I2C_bus_QSFP_error_R', 'UNB2_mask_RW', 'UNB2_POL_CLOCK_IOUT_R', 'UNB2_POL_CLOCK_TEMP_R', 'UNB2_POL_CLOCK_VOUT_R', 'UNB2_POL_QSFP_N01_IOUT_R', 'UNB2_POL_QSFP_N01_TEMP_R', 'UNB2_POL_QSFP_N01_VOUT_R', 'UNB2_POL_QSFP_N23_IOUT_R', 'UNB2_POL_QSFP_N23_TEMP_R', 'UNB2_POL_QSFP_N23_VOUT_R', 'UNB2_POL_SWITCH_1V2_IOUT_R', 'UNB2_POL_SWITCH_1V2_TEMP_R', 'UNB2_POL_SWITCH_1V2_VOUT_R', 'UNB2_POL_SWITCH_PHY_IOUT_R', 'UNB2_POL_SWITCH_PHY_TEMP_R', 'UNB2_POL_SWITCH_PHY_VOUT_R', 'UNB2_PWR_off_R', 'UNB2_PWR_off_RW', 'State', 'Status']\n",
"last_packet_timestamp_R [1623249385]\n",
"\r\n",
"queue_percentage_used_R [0.]\n",
"Attributes:\n",
"State <function __get_command_func.<locals>.f at 0x7fcb205fd0d0>\n",
">>>\t version_R\n",
"Status <function __get_command_func.<locals>.f at 0x7fcb205fd0d0>\n"
">>>\t opcua_missing_attributes_R\n",
">>>\t UNB2TR_translator_busy_R\n",
">>>\t UNB2_DC_DC_48V_12V_IOUT_R\n",
">>>\t UNB2_DC_DC_48V_12V_TEMP_R\n",
">>>\t UNB2_DC_DC_48V_12V_VIN_R\n",
">>>\t UNB2_DC_DC_48V_12V_VOUT_R\n",
">>>\t UNB2_EEPROM_Serial_Number_R\n",
">>>\t UNB2_EEPROM_Unique_ID_R\n",
">>>\t UNB2_FPGA_DDR4_SLOT_TEMP_R\n",
">>>\t UNB2_FPGA_POL_CORE_IOUT_R\n",
">>>\t UNB2_FPGA_POL_CORE_TEMP_R\n",
">>>\t UNB2_FPGA_POL_CORE_VOUT_R\n",
">>>\t UNB2_FPGA_POL_ERAM_IOUT_R\n",
">>>\t UNB2_FPGA_POL_ERAM_TEMP_R\n",
">>>\t UNB2_FPGA_POL_ERAM_VOUT_R\n",
">>>\t UNB2_FPGA_POL_HGXB_IOUT_R\n",
">>>\t UNB2_FPGA_POL_HGXB_TEMP_R\n",
">>>\t UNB2_FPGA_POL_HGXB_VOUT_R\n",
">>>\t UNB2_FPGA_POL_PGM_IOUT_R\n",
">>>\t UNB2_FPGA_POL_PGM_TEMP_R\n",
">>>\t UNB2_FPGA_POL_PGM_VOUT_R\n",
">>>\t UNB2_FPGA_POL_RXGXB_IOUT_R\n",
">>>\t UNB2_FPGA_POL_RXGXB_TEMP_R\n",
">>>\t UNB2_FPGA_POL_RXGXB_VOUT_R\n",
">>>\t UNB2_FPGA_POL_TXGXB_IOUT_R\n",
">>>\t UNB2_FPGA_POL_TXGXB_TEMP_R\n",
">>>\t UNB2_FPGA_POL_TXGXB_VOUT_R\n",
">>>\t UNB2_FPGA_QSFP_CAGE_LOS_R\n",
">>>\t UNB2_FPGA_QSFP_CAGE_TEMP_R\n",
">>>\t UNB2_Front_Panel_LED_R\n",
">>>\t UNB2_Front_Panel_LED_RW\n",
">>>\t UNB2_I2C_bus_DDR4_error_R\n",
">>>\t UNB2_I2C_bus_error_R\n",
">>>\t UNB2_I2C_bus_FPGA_PS_error_R\n",
">>>\t UNB2_I2C_bus_PS_error_R\n",
">>>\t UNB2_I2C_bus_QSFP_error_R\n",
">>>\t UNB2_mask_RW\n",
">>>\t UNB2_POL_CLOCK_IOUT_R\n",
">>>\t UNB2_POL_CLOCK_TEMP_R\n",
">>>\t UNB2_POL_CLOCK_VOUT_R\n",
">>>\t UNB2_POL_QSFP_N01_IOUT_R\n",
">>>\t UNB2_POL_QSFP_N01_TEMP_R\n",
">>>\t UNB2_POL_QSFP_N01_VOUT_R\n",
">>>\t UNB2_POL_QSFP_N23_IOUT_R\n",
">>>\t UNB2_POL_QSFP_N23_TEMP_R\n",
">>>\t UNB2_POL_QSFP_N23_VOUT_R\n",
">>>\t UNB2_POL_SWITCH_1V2_IOUT_R\n",
">>>\t UNB2_POL_SWITCH_1V2_TEMP_R\n",
">>>\t UNB2_POL_SWITCH_1V2_VOUT_R\n",
">>>\t UNB2_POL_SWITCH_PHY_IOUT_R\n",
">>>\t UNB2_POL_SWITCH_PHY_TEMP_R\n",
">>>\t UNB2_POL_SWITCH_PHY_VOUT_R\n",
">>>\t UNB2_PWR_off_R\n",
">>>\t UNB2_PWR_off_RW\n",
">>>\t State\n",
">>>\t Status\n",
"Missing Attributes: \n",
" ('2:UNB2TR_translator_busy_R', '2:UNB2_EEPROM_Serial_Number_R', '2:UNB2_I2C_bus_DDR4_error_R', '2:UNB2_I2C_bus_error_R', '2:UNB2_I2C_bus_FPGA_PS_error_R', '2:UNB2_I2C_bus_PS_error_R', '2:UNB2_I2C_bus_QSFP_error_R', '2:UNB2_PWR_off_R', '2:UNB2_PWR_off_RW')\n"
]
]
}
}
],
],
"source": [
"source": [
"attr_names = d.get_attribute_list()\n",
"attr_names = d.get_attribute_list()\n",
"print(attr_names)\n",
"\n",
"\n",
"print(\"\\r\\nAttributes:\")\n",
"for i in attr_names:\n",
"for i in attr_names:\n",
" exec(\"value = print(i, d.{})\".format(i))\n"
" print(\">>>\\t\",i)\n",
" #exec(\"value = print(i, d.{})\".format(i))\n",
"print(\"Missing Attributes: \\n\", d.opcua_missing_attributes_R)"
]
]
},
},
{
{
"cell_type": "code",
"cell_type": "code",
"execution_count":
39
,
"execution_count":
20
,
"id": "sporting-current",
"id": "sporting-current",
"metadata": {},
"metadata": {},
"outputs": [
"outputs": [
{
{
"data": {
"name": "stdout",
"text/plain": [
"output_type": "stream",
"3.0"
"text": [
]
"[False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False]\n"
},
]
"execution_count": 39,
},
"metadata": {},
{
"output_type": "execute_result"
"ename": "AttributeError",
"evalue": "RCU_monitor_rate_RW",
"output_type": "error",
"traceback": [
"\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
"\u001b[0;31mConnectionFailed\u001b[0m Traceback (most recent call last)",
"\u001b[0;32m/usr/local/lib/python3.7/dist-packages/tango/device_proxy.py\u001b[0m in \u001b[0;36m__DeviceProxy__getattr\u001b[0;34m(self, name)\u001b[0m\n\u001b[1;32m 326\u001b[0m \u001b[0;32mtry\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 327\u001b[0;31m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m__refresh_cmd_cache\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 328\u001b[0m \u001b[0;32mexcept\u001b[0m \u001b[0mException\u001b[0m \u001b[0;32mas\u001b[0m \u001b[0me\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
"\u001b[0;32m/usr/local/lib/python3.7/dist-packages/tango/device_proxy.py\u001b[0m in \u001b[0;36m__DeviceProxy__refresh_cmd_cache\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 241\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0m__DeviceProxy__refresh_cmd_cache\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 242\u001b[0;31m \u001b[0mcmd_list\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mcommand_list_query\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 243\u001b[0m \u001b[0mcmd_cache\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m{\u001b[0m\u001b[0;34m}\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
"\u001b[0;31mConnectionFailed\u001b[0m: DevFailed[\nDevError[\n desc = Device lts/sst/1 is not exported (hint: try starting the device server)\n origin = DeviceProxy::get_corba_name()\n reason = API_DeviceNotExported\nseverity = ERR]\n]",
"\nThe above exception was the direct cause of the following exception:\n",
"\u001b[0;31mAttributeError\u001b[0m Traceback (most recent call last)",
"\u001b[0;32m/tmp/ipykernel_22/1020840340.py\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[1;32m 5\u001b[0m \u001b[0mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0md\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mRCU_mask_RW\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 6\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 7\u001b[0;31m \u001b[0mmonitor_rate\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0md\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mRCU_monitor_rate_RW\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 8\u001b[0m \u001b[0mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"current monitoring rate: {}, setting to {}\"\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mformat\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mmonitor_rate\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mmonitor_rate\u001b[0m \u001b[0;34m+\u001b[0m \u001b[0;36m1\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 9\u001b[0m \u001b[0mmonitor_rate\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mmonitor_rate\u001b[0m \u001b[0;34m+\u001b[0m \u001b[0;36m1\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
"\u001b[0;32m/usr/local/lib/python3.7/dist-packages/tango/device_proxy.py\u001b[0m in \u001b[0;36m__DeviceProxy__getattr\u001b[0;34m(self, name)\u001b[0m\n\u001b[1;32m 353\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mread_pipe\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mname\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 354\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 355\u001b[0;31m \u001b[0msix\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mraise_from\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mAttributeError\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mname\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mcause\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 356\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 357\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n",
"\u001b[0;32m/usr/local/lib/python3.7/dist-packages/six.py\u001b[0m in \u001b[0;36mraise_from\u001b[0;34m(value, from_value)\u001b[0m\n",
"\u001b[0;31mAttributeError\u001b[0m: RCU_monitor_rate_RW"
]
}
}
],
],
"source": [
"source": [
...
...
%% Cell type:code id:waiting-chance tags:
%% Cell type:code id:waiting-chance tags:
```
python
```
python
import
time
import
time
import
numpy
import
numpy
```
```
%% Cell type:code id:moving-alexandria tags:
%% Cell type:code id:moving-alexandria tags:
```
python
```
python
d
=
DeviceProxy
(
"
LTS/
SST
/1
"
)
d
=
DeviceProxy
(
"
LTS/
UNB2
/1
"
)
```
```
%% Cell type:code id:ranking-aluminum tags:
%% Cell type:code id:ranking-aluminum tags:
```
python
```
python
state
=
str
(
d
.
state
())
state
=
str
(
d
.
state
())
if
state
==
"
OFF
"
:
if
state
==
"
OFF
"
:
d
.
initialise
()
d
.
initialise
()
time
.
sleep
(
1
)
time
.
sleep
(
1
)
state
=
str
(
d
.
state
())
state
=
str
(
d
.
state
())
if
state
==
"
STANDBY
"
:
if
state
==
"
STANDBY
"
:
d
.
on
()
d
.
on
()
state
=
str
(
d
.
state
())
state
=
str
(
d
.
state
())
if
state
==
"
ON
"
:
if
state
==
"
ON
"
:
print
(
"
Device is now in on state
"
)
print
(
"
Device is now in on state
"
)
else
:
print
(
f
"
Device is now in
{
state
}
state
"
)
```
```
%% Output
%% Output
Device is now in on state
Device is now in on state
%% Cell type:code id:beneficial-evidence tags:
%% Cell type:code id:beneficial-evidence tags:
```
python
```
python
attr_names
=
d
.
get_attribute_list
()
attr_names
=
d
.
get_attribute_list
()
print
(
attr_names
)
print
(
"
\r\n
Attributes:
"
)
for
i
in
attr_names
:
for
i
in
attr_names
:
exec
(
"
value = print(i, d.{})
"
.
format
(
i
))
print
(
"
>>>
\t
"
,
i
)
#exec("value = print(i, d.{})".format(i))
print
(
"
Missing Attributes:
\n
"
,
d
.
opcua_missing_attributes_R
)
```
```
%% Output
%% Output
packet_count_R [55]
['version_R', 'opcua_missing_attributes_R', 'UNB2TR_translator_busy_R', 'UNB2_DC_DC_48V_12V_IOUT_R', 'UNB2_DC_DC_48V_12V_TEMP_R', 'UNB2_DC_DC_48V_12V_VIN_R', 'UNB2_DC_DC_48V_12V_VOUT_R', 'UNB2_EEPROM_Serial_Number_R', 'UNB2_EEPROM_Unique_ID_R', 'UNB2_FPGA_DDR4_SLOT_TEMP_R', 'UNB2_FPGA_POL_CORE_IOUT_R', 'UNB2_FPGA_POL_CORE_TEMP_R', 'UNB2_FPGA_POL_CORE_VOUT_R', 'UNB2_FPGA_POL_ERAM_IOUT_R', 'UNB2_FPGA_POL_ERAM_TEMP_R', 'UNB2_FPGA_POL_ERAM_VOUT_R', 'UNB2_FPGA_POL_HGXB_IOUT_R', 'UNB2_FPGA_POL_HGXB_TEMP_R', 'UNB2_FPGA_POL_HGXB_VOUT_R', 'UNB2_FPGA_POL_PGM_IOUT_R', 'UNB2_FPGA_POL_PGM_TEMP_R', 'UNB2_FPGA_POL_PGM_VOUT_R', 'UNB2_FPGA_POL_RXGXB_IOUT_R', 'UNB2_FPGA_POL_RXGXB_TEMP_R', 'UNB2_FPGA_POL_RXGXB_VOUT_R', 'UNB2_FPGA_POL_TXGXB_IOUT_R', 'UNB2_FPGA_POL_TXGXB_TEMP_R', 'UNB2_FPGA_POL_TXGXB_VOUT_R', 'UNB2_FPGA_QSFP_CAGE_LOS_R', 'UNB2_FPGA_QSFP_CAGE_TEMP_R', 'UNB2_Front_Panel_LED_R', 'UNB2_Front_Panel_LED_RW', 'UNB2_I2C_bus_DDR4_error_R', 'UNB2_I2C_bus_error_R', 'UNB2_I2C_bus_FPGA_PS_error_R', 'UNB2_I2C_bus_PS_error_R', 'UNB2_I2C_bus_QSFP_error_R', 'UNB2_mask_RW', 'UNB2_POL_CLOCK_IOUT_R', 'UNB2_POL_CLOCK_TEMP_R', 'UNB2_POL_CLOCK_VOUT_R', 'UNB2_POL_QSFP_N01_IOUT_R', 'UNB2_POL_QSFP_N01_TEMP_R', 'UNB2_POL_QSFP_N01_VOUT_R', 'UNB2_POL_QSFP_N23_IOUT_R', 'UNB2_POL_QSFP_N23_TEMP_R', 'UNB2_POL_QSFP_N23_VOUT_R', 'UNB2_POL_SWITCH_1V2_IOUT_R', 'UNB2_POL_SWITCH_1V2_TEMP_R', 'UNB2_POL_SWITCH_1V2_VOUT_R', 'UNB2_POL_SWITCH_PHY_IOUT_R', 'UNB2_POL_SWITCH_PHY_TEMP_R', 'UNB2_POL_SWITCH_PHY_VOUT_R', 'UNB2_PWR_off_R', 'UNB2_PWR_off_RW', 'State', 'Status']
last_packet_timestamp_R [1623249385]
queue_percentage_used_R [0.]
Attributes:
State <function __get_command_func.<locals>.f at 0x7fcb205fd0d0>
>>> version_R
Status <function __get_command_func.<locals>.f at 0x7fcb205fd0d0>
>>> opcua_missing_attributes_R
>>> UNB2TR_translator_busy_R
>>> UNB2_DC_DC_48V_12V_IOUT_R
>>> UNB2_DC_DC_48V_12V_TEMP_R
>>> UNB2_DC_DC_48V_12V_VIN_R
>>> UNB2_DC_DC_48V_12V_VOUT_R
>>> UNB2_EEPROM_Serial_Number_R
>>> UNB2_EEPROM_Unique_ID_R
>>> UNB2_FPGA_DDR4_SLOT_TEMP_R
>>> UNB2_FPGA_POL_CORE_IOUT_R
>>> UNB2_FPGA_POL_CORE_TEMP_R
>>> UNB2_FPGA_POL_CORE_VOUT_R
>>> UNB2_FPGA_POL_ERAM_IOUT_R
>>> UNB2_FPGA_POL_ERAM_TEMP_R
>>> UNB2_FPGA_POL_ERAM_VOUT_R
>>> UNB2_FPGA_POL_HGXB_IOUT_R
>>> UNB2_FPGA_POL_HGXB_TEMP_R
>>> UNB2_FPGA_POL_HGXB_VOUT_R
>>> UNB2_FPGA_POL_PGM_IOUT_R
>>> UNB2_FPGA_POL_PGM_TEMP_R
>>> UNB2_FPGA_POL_PGM_VOUT_R
>>> UNB2_FPGA_POL_RXGXB_IOUT_R
>>> UNB2_FPGA_POL_RXGXB_TEMP_R
>>> UNB2_FPGA_POL_RXGXB_VOUT_R
>>> UNB2_FPGA_POL_TXGXB_IOUT_R
>>> UNB2_FPGA_POL_TXGXB_TEMP_R
>>> UNB2_FPGA_POL_TXGXB_VOUT_R
>>> UNB2_FPGA_QSFP_CAGE_LOS_R
>>> UNB2_FPGA_QSFP_CAGE_TEMP_R
>>> UNB2_Front_Panel_LED_R
>>> UNB2_Front_Panel_LED_RW
>>> UNB2_I2C_bus_DDR4_error_R
>>> UNB2_I2C_bus_error_R
>>> UNB2_I2C_bus_FPGA_PS_error_R
>>> UNB2_I2C_bus_PS_error_R
>>> UNB2_I2C_bus_QSFP_error_R
>>> UNB2_mask_RW
>>> UNB2_POL_CLOCK_IOUT_R
>>> UNB2_POL_CLOCK_TEMP_R
>>> UNB2_POL_CLOCK_VOUT_R
>>> UNB2_POL_QSFP_N01_IOUT_R
>>> UNB2_POL_QSFP_N01_TEMP_R
>>> UNB2_POL_QSFP_N01_VOUT_R
>>> UNB2_POL_QSFP_N23_IOUT_R
>>> UNB2_POL_QSFP_N23_TEMP_R
>>> UNB2_POL_QSFP_N23_VOUT_R
>>> UNB2_POL_SWITCH_1V2_IOUT_R
>>> UNB2_POL_SWITCH_1V2_TEMP_R
>>> UNB2_POL_SWITCH_1V2_VOUT_R
>>> UNB2_POL_SWITCH_PHY_IOUT_R
>>> UNB2_POL_SWITCH_PHY_TEMP_R
>>> UNB2_POL_SWITCH_PHY_VOUT_R
>>> UNB2_PWR_off_R
>>> UNB2_PWR_off_RW
>>> State
>>> Status
Missing Attributes:
('2:UNB2TR_translator_busy_R', '2:UNB2_EEPROM_Serial_Number_R', '2:UNB2_I2C_bus_DDR4_error_R', '2:UNB2_I2C_bus_error_R', '2:UNB2_I2C_bus_FPGA_PS_error_R', '2:UNB2_I2C_bus_PS_error_R', '2:UNB2_I2C_bus_QSFP_error_R', '2:UNB2_PWR_off_R', '2:UNB2_PWR_off_RW')
%% Cell type:code id:sporting-current tags:
%% Cell type:code id:sporting-current tags:
```
python
```
python
d
.
RCU_mask_RW
=
[
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
d
.
RCU_mask_RW
=
[
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,]
False
,
False
,
False
,
False
,
False
,
False
,
False
,
False
,]
time
.
sleep
(
1
)
time
.
sleep
(
1
)
print
(
d
.
RCU_mask_RW
)
print
(
d
.
RCU_mask_RW
)
monitor_rate
=
d
.
RCU_monitor_rate_RW
monitor_rate
=
d
.
RCU_monitor_rate_RW
print
(
"
current monitoring rate: {}, setting to {}
"
.
format
(
monitor_rate
,
monitor_rate
+
1
))
print
(
"
current monitoring rate: {}, setting to {}
"
.
format
(
monitor_rate
,
monitor_rate
+
1
))
monitor_rate
=
monitor_rate
+
1
monitor_rate
=
monitor_rate
+
1
time
.
sleep
(
1
)
time
.
sleep
(
1
)
```
```
%% Output
%% Output
3.0
[False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False]
---------------------------------------------------------------------------
ConnectionFailed Traceback (most recent call last)
/usr/local/lib/python3.7/dist-packages/tango/device_proxy.py in __DeviceProxy__getattr(self, name)
326 try:
--> 327 self.__refresh_cmd_cache()
328 except Exception as e:
/usr/local/lib/python3.7/dist-packages/tango/device_proxy.py in __DeviceProxy__refresh_cmd_cache(self)
241 def __DeviceProxy__refresh_cmd_cache(self):
--> 242 cmd_list = self.command_list_query()
243 cmd_cache = {}
ConnectionFailed: DevFailed[
DevError[
desc = Device lts/sst/1 is not exported (hint: try starting the device server)
origin = DeviceProxy::get_corba_name()
reason = API_DeviceNotExported
severity = ERR]
]
The above exception was the direct cause of the following exception:
AttributeError Traceback (most recent call last)
/tmp/ipykernel_22/1020840340.py in
<module>
5 print(d.RCU_mask_RW)
6
----> 7 monitor_rate = d.RCU_monitor_rate_RW
8 print("current monitoring rate: {}, setting to {}".format(monitor_rate, monitor_rate + 1))
9 monitor_rate = monitor_rate + 1
/usr/local/lib/python3.7/dist-packages/tango/device_proxy.py in __DeviceProxy__getattr(self, name)
353 return self.read_pipe(name)
354
--> 355 six.raise_from(AttributeError(name), cause)
356
357
/usr/local/lib/python3.7/dist-packages/six.py in raise_from(value, from_value)
AttributeError: RCU_monitor_rate_RW
%% Cell type:code id:sharing-mechanics tags:
%% Cell type:code id:sharing-mechanics tags:
```
python
```
python
``
`
``
`
%%
Cell
type
:
code
id
:
ruled
-
tracy
tags
:
%%
Cell
type
:
code
id
:
ruled
-
tracy
tags
:
```
python
```
python
```
```
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment