{ "$schema": "https://raw.githubusercontent.com/nobrega8/mbmap-library/main/schema/mbmap-2.schema.json", "mbmap": 2, "vendor": "Advantech", "model": "ADAM-6018", "models": ["ADAM-6018"], "vendor_website": "advantech.com", "description": "8-channel isolated thermocouple input module with 8 digital outputs, Modbus TCP", "revision": 2, "revised": "2026-10-17", "source": "Advantech, \"ADAM-6000 Series User Manual\", Edition 9, Appendix B.2 (I/O Modbus mapping tables)", "sources": [{"title": "ADAM-6000 Series User Manual", "version": "Edition 9", "url": "https://support.elmark.com.pl/advantech/ia/CDROMS/ADAM-4k6k%20Series/Manual/ADAM%206000/ADAM-6000_User_Manaul_Ed_9.pdf", "note": "Appendix B.2, ADAM-6018"}], "notes": [ "Addresses are the Modicon numbers of the manual (00001 = coil 1, 40001 = holding register 1).", "32-bit counters and pulse settings are low word first (the manual: counter = (40002) × 65536 + (40001)).", "Some registers (floats, GCL, diagnostics) need the CE or D version of the module." ], "protocol": "tcp", "unit_id": 1, "port": 502, "byte_order": "big", "word_order": "little", "address_base": 1, "x_status": "official", "registers": [ {"name": "DO0", "group": "Digital outputs", "area": "coil", "address": 17, "type": "bool", "access": "RW"}, {"name": "DO1", "group": "Digital outputs", "area": "coil", "address": 18, "type": "bool", "access": "RW"}, {"name": "DO2", "group": "Digital outputs", "area": "coil", "address": 19, "type": "bool", "access": "RW"}, {"name": "DO3", "group": "Digital outputs", "area": "coil", "address": 20, "type": "bool", "access": "RW"}, {"name": "DO4", "group": "Digital outputs", "area": "coil", "address": 21, "type": "bool", "access": "RW"}, {"name": "DO5", "group": "Digital outputs", "area": "coil", "address": 22, "type": "bool", "access": "RW"}, {"name": "DO6", "group": "Digital outputs", "area": "coil", "address": 23, "type": "bool", "access": "RW"}, {"name": "DO7", "group": "Digital outputs", "area": "coil", "address": 24, "type": "bool", "access": "RW"}, {"name": "Reset max AI0", "group": "Commands", "area": "coil", "address": 101, "type": "bool", "access": "RW"}, {"name": "Reset max AI1", "group": "Commands", "area": "coil", "address": 102, "type": "bool", "access": "RW"}, {"name": "Reset max AI2", "group": "Commands", "area": "coil", "address": 103, "type": "bool", "access": "RW"}, {"name": "Reset max AI3", "group": "Commands", "area": "coil", "address": 104, "type": "bool", "access": "RW"}, {"name": "Reset max AI4", "group": "Commands", "area": "coil", "address": 105, "type": "bool", "access": "RW"}, {"name": "Reset max AI5", "group": "Commands", "area": "coil", "address": 106, "type": "bool", "access": "RW"}, {"name": "Reset max AI6", "group": "Commands", "area": "coil", "address": 107, "type": "bool", "access": "RW"}, {"name": "Reset max AI7", "group": "Commands", "area": "coil", "address": 108, "type": "bool", "access": "RW"}, {"name": "Reset max average", "group": "Commands", "area": "coil", "address": 109, "type": "bool", "access": "RW"}, {"name": "Reset min AI0", "group": "Commands", "area": "coil", "address": 111, "type": "bool", "access": "RW"}, {"name": "Reset min AI1", "group": "Commands", "area": "coil", "address": 112, "type": "bool", "access": "RW"}, {"name": "Reset min AI2", "group": "Commands", "area": "coil", "address": 113, "type": "bool", "access": "RW"}, {"name": "Reset min AI3", "group": "Commands", "area": "coil", "address": 114, "type": "bool", "access": "RW"}, {"name": "Reset min AI4", "group": "Commands", "area": "coil", "address": 115, "type": "bool", "access": "RW"}, {"name": "Reset min AI5", "group": "Commands", "area": "coil", "address": 116, "type": "bool", "access": "RW"}, {"name": "Reset min AI6", "group": "Commands", "area": "coil", "address": 117, "type": "bool", "access": "RW"}, {"name": "Reset min AI7", "group": "Commands", "area": "coil", "address": 118, "type": "bool", "access": "RW"}, {"name": "Reset min average", "group": "Commands", "area": "coil", "address": 119, "type": "bool", "access": "RW"}, {"name": "AI0 burn-out", "group": "Alarms", "area": "coil", "address": 121, "type": "bool", "access": "R"}, {"name": "AI1 burn-out", "group": "Alarms", "area": "coil", "address": 122, "type": "bool", "access": "R"}, {"name": "AI2 burn-out", "group": "Alarms", "area": "coil", "address": 123, "type": "bool", "access": "R"}, {"name": "AI3 burn-out", "group": "Alarms", "area": "coil", "address": 124, "type": "bool", "access": "R"}, {"name": "AI4 burn-out", "group": "Alarms", "area": "coil", "address": 125, "type": "bool", "access": "R"}, {"name": "AI5 burn-out", "group": "Alarms", "area": "coil", "address": 126, "type": "bool", "access": "R"}, {"name": "AI6 burn-out", "group": "Alarms", "area": "coil", "address": 127, "type": "bool", "access": "R"}, {"name": "AI7 burn-out", "group": "Alarms", "area": "coil", "address": 128, "type": "bool", "access": "R"}, {"name": "AI0 high alarm", "group": "Alarms", "area": "coil", "address": 131, "type": "bool", "access": "R"}, {"name": "AI1 high alarm", "group": "Alarms", "area": "coil", "address": 132, "type": "bool", "access": "R"}, {"name": "AI2 high alarm", "group": "Alarms", "area": "coil", "address": 133, "type": "bool", "access": "R"}, {"name": "AI3 high alarm", "group": "Alarms", "area": "coil", "address": 134, "type": "bool", "access": "R"}, {"name": "AI4 high alarm", "group": "Alarms", "area": "coil", "address": 135, "type": "bool", "access": "R"}, {"name": "AI5 high alarm", "group": "Alarms", "area": "coil", "address": 136, "type": "bool", "access": "R"}, {"name": "AI6 high alarm", "group": "Alarms", "area": "coil", "address": 137, "type": "bool", "access": "R"}, {"name": "AI7 high alarm", "group": "Alarms", "area": "coil", "address": 138, "type": "bool", "access": "R"}, {"name": "Average high alarm", "group": "Alarms", "area": "coil", "address": 139, "type": "bool", "access": "R"}, {"name": "AI0 low alarm", "group": "Alarms", "area": "coil", "address": 141, "type": "bool", "access": "R"}, {"name": "AI1 low alarm", "group": "Alarms", "area": "coil", "address": 142, "type": "bool", "access": "R"}, {"name": "AI2 low alarm", "group": "Alarms", "area": "coil", "address": 143, "type": "bool", "access": "R"}, {"name": "AI3 low alarm", "group": "Alarms", "area": "coil", "address": 144, "type": "bool", "access": "R"}, {"name": "AI4 low alarm", "group": "Alarms", "area": "coil", "address": 145, "type": "bool", "access": "R"}, {"name": "AI5 low alarm", "group": "Alarms", "area": "coil", "address": 146, "type": "bool", "access": "R"}, {"name": "AI6 low alarm", "group": "Alarms", "area": "coil", "address": 147, "type": "bool", "access": "R"}, {"name": "AI7 low alarm", "group": "Alarms", "area": "coil", "address": 148, "type": "bool", "access": "R"}, {"name": "Average low alarm", "group": "Alarms", "area": "coil", "address": 149, "type": "bool", "access": "R"}, {"name": "AI0", "group": "Analog inputs", "area": "holding", "address": 1, "type": "uint16", "access": "R", "description": "Raw value of the thermocouple range"}, {"name": "AI1", "group": "Analog inputs", "area": "holding", "address": 2, "type": "uint16", "access": "R"}, {"name": "AI2", "group": "Analog inputs", "area": "holding", "address": 3, "type": "uint16", "access": "R"}, {"name": "AI3", "group": "Analog inputs", "area": "holding", "address": 4, "type": "uint16", "access": "R"}, {"name": "AI4", "group": "Analog inputs", "area": "holding", "address": 5, "type": "uint16", "access": "R"}, {"name": "AI5", "group": "Analog inputs", "area": "holding", "address": 6, "type": "uint16", "access": "R"}, {"name": "AI6", "group": "Analog inputs", "area": "holding", "address": 7, "type": "uint16", "access": "R"}, {"name": "AI7", "group": "Analog inputs", "area": "holding", "address": 8, "type": "uint16", "access": "R"}, {"name": "AI average", "group": "Analog inputs", "area": "holding", "address": 9, "type": "uint16", "access": "R"}, {"name": "Max AI0", "group": "Analog inputs", "area": "holding", "address": 11, "type": "uint16", "access": "R"}, {"name": "Max AI1", "group": "Analog inputs", "area": "holding", "address": 12, "type": "uint16", "access": "R"}, {"name": "Max AI2", "group": "Analog inputs", "area": "holding", "address": 13, "type": "uint16", "access": "R"}, {"name": "Max AI3", "group": "Analog inputs", "area": "holding", "address": 14, "type": "uint16", "access": "R"}, {"name": "Max AI4", "group": "Analog inputs", "area": "holding", "address": 15, "type": "uint16", "access": "R"}, {"name": "Max AI5", "group": "Analog inputs", "area": "holding", "address": 16, "type": "uint16", "access": "R"}, {"name": "Max AI6", "group": "Analog inputs", "area": "holding", "address": 17, "type": "uint16", "access": "R"}, {"name": "Max AI7", "group": "Analog inputs", "area": "holding", "address": 18, "type": "uint16", "access": "R"}, {"name": "Max AI average", "group": "Analog inputs", "area": "holding", "address": 19, "type": "uint16", "access": "R"}, {"name": "Min AI0", "group": "Analog inputs", "area": "holding", "address": 21, "type": "uint16", "access": "R"}, {"name": "Min AI1", "group": "Analog inputs", "area": "holding", "address": 22, "type": "uint16", "access": "R"}, {"name": "Min AI2", "group": "Analog inputs", "area": "holding", "address": 23, "type": "uint16", "access": "R"}, {"name": "Min AI3", "group": "Analog inputs", "area": "holding", "address": 24, "type": "uint16", "access": "R"}, {"name": "Min AI4", "group": "Analog inputs", "area": "holding", "address": 25, "type": "uint16", "access": "R"}, {"name": "Min AI5", "group": "Analog inputs", "area": "holding", "address": 26, "type": "uint16", "access": "R"}, {"name": "Min AI6", "group": "Analog inputs", "area": "holding", "address": 27, "type": "uint16", "access": "R"}, {"name": "Min AI7", "group": "Analog inputs", "area": "holding", "address": 28, "type": "uint16", "access": "R"}, {"name": "Min AI average", "group": "Analog inputs", "area": "holding", "address": 29, "type": "uint16", "access": "R"}, {"name": "GCL flags", "group": "GCL", "area": "holding", "address": 305, "type": "uint16", "access": "RW"} ] }