Merilni centri MC3x0
Merilnika sta namenjena za meritve, analizo in nadzor nad enofaznim ali trifaznim elektroenergetskim omrežjem. RMS-vrednost zapisuje na principu hitrega vzorčenja napetostnih in tokovnih signalov. Vgrajeni mikroprocesor iz merjenih signalov izračuna merjene veličine (napetost, tok, frekvenco, energija, moč, faktor moči, fazne kote itd.).
- Meritve trenutnih vrednosti 67 veličin (U, I, P, Q, S, PF, PA, f, φ…) (samo MC330)
- 4 števci energije
- Razred točnosti U, I, P 0,5, delovna energija, razred 1 (opcijsko 0,5s)
- Frekvenčno območje od 16 do 400 Hz
- Do 2 tarifna vhoda (opcija)
- Do 2 S0- ali relejna izhoda (opcija)
- Izmenično ali univerzalno napajanje (opcija)
- Grafični LCD-prikazovalnik; 128 x 64 točk z osvetlitvijo
- Avtomatsko območje nazivnega toka (maks. 12,5 A) in napetosti (opcija)
- Uporabniško nastavljivi prikazi meritev
- Podpora v več jezikih (13 jezikov)
- USB komunikacija, RS485 ali RS232 komunikacija do 115.200 bit/s (opcija)
- Komunikacijski protokol MODBUS
- Za uporabnika prijazna PC-programska oprema MiQen
- MC 350 - zapisovalnik omrežja
- MC 330 - multimeter
{{ errors[0] }} {{ titlePgs }} {{ productGroup.name[context.language] }} {{ productGroup.description[context.language] }} {{ titlePg }} {{ backLabel }} {{ product.id }} {{ product.description[context.language] }} {{ error }} {{ id }} {{ reloadLabel }} {{ prop.name[context.language] }} {{ op.code + optionName(op) }} {{ orderCodeLabel }} {{ orderCode }} {{ quantityLabel[context.language] }} {{ sendRequestLabel }} {{
notSelectedErrorLabel + " (" + prop.name[context.language] + ")" }} {{ toLongErrorLabel + " " + (prop.options[0].code).match(/d+/g).map(Number) + " (" + prop.name[context.language] + ")" }} var logicModule = function () { function getTruth(proposition, truths) { var propositionClone = JSON.parse(JSON.stringify(proposition)); var stmnt = propositionClone.stmnt; for (var i = 0; i < stmnt.length; i++) { if (stmnt[i].hasOwnProperty('comparator')) { stmnt[i] = resolveNode(stmnt[i], truths); } if
(stmnt[i].hasOwnProperty('stmnt')) { stmnt[i] = getTruth(stmnt[i], truths); } } stmnt = decide(stmnt, 'not'); stmnt = decide(stmnt, 'and'); stmnt = decide(stmnt, 'or'); for (var i = 0; i < stmnt.length; i++) { if (stmnt[i] == true) { return true; } } return false; function resolveNode(node, truths) { for (var i = 0; i < truths.length; i++) { if (node.property == truths[i].property) { var x = checkMatch(node.options, truths[i].option); if (node.comparator === 'equals') { if (x) return
true; } if (node.comparator === 'notEquals') { if (!x) return true; } } } return false; } function checkMatch(options, truth) { for (var i = 0; i < options.length; i++) { if (options[i] == truth) { return true; } } return false; } function decide(stmnt, functor) { if (functor === 'or' || functor === 'and') { var newStmnt; while (stmnt != null) { newStmnt = stmnt; stmnt = getResult(stmnt, functor); } return newStmnt; } if (functor === 'not') { for (var i = 0; i < stmnt.length; i++) { if
(stmnt[i] === 'not') { stmnt[i + 1] = !stmnt[i + 1]; stmnt.splice(i, 1); } } return stmnt; } } function getResult(stmnt, functor) { for (var i = 0; i < stmnt.length; i++) { if (stmnt[i] === functor) { if (functor === 'and') { var result = stmnt[i - 1] && stmnt[i + 1]; } if (functor === 'or') { var result = stmnt[i - 1] || stmnt[i + 1]; } var arr1 = chopArr(stmnt, 0, i - 2); var arr2 = chopArr(stmnt, i + 2, stmnt.length - 1); stmnt = arr1.push(result); stmnt = arr1.concat(arr2);
return stmnt; } } return null; } function chopArr(array, startIndex, endIndex) { var arr = []; for (var i = startIndex; i < endIndex + 1; i++) { arr.push(array[i]); } return arr; } } return { getTruth: getTruth } } if (!String.prototype.startsWith) { String.prototype.startsWith = function (searchString, position) { position = position || 0; return this.indexOf(searchString, position) === position; }; } var context = { url: document.getElementsByClassName("productItemTittle")[0].innerHTML,
language: document.documentElement.lang, dataPath: 'https://' + location.hostname + '/f/konfigurator/', // url: 'buzzWord', Andrej 08.08.2018 // language: 'en', Andrej 08.08.2018 // dataPath: 'konfigurator/' Andrej 08.08.2018 } var dm = (function (context) { var context = context; var storedProducts = []; var loadData = function (url, target, callback) { if (target === "productGroups") { url = context.dataPath + 'data/ProduktneSkupine.txt' } else if (target === "internetGroups") { url =
context.dataPath + 'data/InternetneSkupine.txt' } else if (target === "labels") { url = context.dataPath + 'data/Napisi.txt' } else { url = context.dataPath + 'data/' + url + '.txt' } $.ajax({ url: url, method: 'GET', success: function (data) { callback(JSON.parse(data)); }, error: function () { callback(); } }); } var storeProduct = function (product) { var alreadyStored = false; for (let i = 0; i < storedProducts.length; i++) { if (product.id === storedProducts[i].id) { storedProducts[i] =
product; alreadyStored = true; } } if (!alreadyStored) { storedProducts.push(product); } if (storedProducts.length > 10) { storedProducts.splice(0, 1); } } var getStoredProduct = function (id) { for (let i = 0; i < storedProducts.length; i++) { if (id === storedProducts[i].id) { return storedProducts[i]; } } return false; } var deleteStoredProduct = function (id) { for (let i = 0; i < storedProducts.length; i++) { if (id === storedProducts[i].id) { storedProducts.splice(i, 1); } } }
return { loadData: loadData, storeProduct: storeProduct, getStoredProduct: getStoredProduct, deleteStoredProduct: deleteStoredProduct } }(context)); var lm = new logicModule(); var pgs = new Vue({ el: '#productGroupsDiv', data: { productGroups: [], errors: [], canNotLoad: { en: "Configurator not avialable", sl: "Konfigurator ni na voljo" }, titlePgs: '', context: context, active: false, }, methods: { setData: function (loaded) { try { if (loaded === undefined || loaded.length === 0) {
this.active = true; this.errors.push(this.canNotLoad[context.language]); } else { for (let i = 0; i < loaded.length; i++) { loaded[i].active = false; for (let ii = 0; ii < loaded[i].products.length; ii++) { loaded[i].products[ii].active = false; loaded[i].products[ii].collapsed = false; } } this.productGroups = loaded; if (loaded.length === 1) { this.active = false; this.pgButton(this.productGroups[0]); } else { this.active = true; } } } catch (error) { this.abort(); } }, invokeChild:
function (data) { try { pg.activate(false); pg.clearData(); pr.activate(false); pr.clearData(); if (data === undefined) { this.errors.push() } else { this.animate(data); pg.setData(data); pg.activate(true); } } catch (error) { this.abort(); } }, pgButton: function (productGroup) { try { this.invokeChild(productGroup); } catch (error) { this.abort(); } }, animate: function (productGroup) { for (let i = 0; i < this.productGroups.length; i++) { this.productGroups[i].active = false; }
productGroup.active = true; }, abort: function () { pg.abort = true; pg.clearData(); pr.abort = true; pr.clearData(); try { this.errors.push(this.canNotLoad[context.language]); } catch (error) { this.errors.push(this.canNotLoad.sl) } } }, beforeMount: function () { var self = this; var mainPage = ""; dm.loadData(null, 'labels', function (data) { try { mainPage = data.mainPage[context.language]; pg.titlePg = data.titlePg[context.language]; pg.backLabel = data.backLabel[context.language];
pg.canNotLoadProduct = data.canNotLoadProduct[context.language]; pr.sendRequestLabel = data.sendRequest[context.language]; pr.orderCodeLabel = data.orderCode[context.language]; pr.notSelectedErrorLabel = data.notSelectedError[context.language]; pr.toLongErrorLabel = data.toLongError[context.language]; pr.reloadLabel = data.reload[context.language]; if (data.quantity != undefined) pr.quantityLabel = data.quantity; } catch (error) { self.abort(); } dm.loadData(null, 'productGroups', function
(data) { try { if (data === undefined) { self.setData(); return } } catch (error) { self.abort(); } if (context.url !== "buzzWord" && context.url !== mainPage) { dm.loadData(null, 'internetGroups', function (internetGroups) { try { var internetGroup = {}; var filteredPgs = []; if (internetGroups === undefined) { self.setData(); return; } for (let i = 0; i < internetGroups.length; i++) { if (internetGroups[i].id[context.language] === context.url) { internetGroup = internetGroups[i]; }
} if (internetGroup.productGroups === {} || internetGroup.productGroups === null || internetGroup.productGroups === undefined) { self.setData(); return } for (let i = 0; i < internetGroup.productGroups.length; i++) { for (let pgs = 0; pgs < data.length; pgs++) { if (data[pgs].id === internetGroup.productGroups[i]) { filteredPgs.push(data[pgs]); } } } self.setData(filteredPgs); } catch (error) { self.abort(); } }); } else { self.setData(data); } }); }); } }); var pg = new Vue({ el:
'#productGroupDiv', data: { products: [], errors: [], titlePg: '', backLabel: '', canNotLoadProduct: '', context: context, active: false, abort: false, collapsed: false, }, methods: { setData: function (productGroup) { try { this.products = productGroup.products; } catch (error) { pgs.abort(); } }, activate: function (bool) { this.active = bool; this.collapsed = false; }, clearData: function () { for (let i = 0; i < this.products.length; i++) { this.products[i].active = false;
this.products[i].collapsed = false; } this.collapsed = false; this.products = {}; this.errors = []; }, invokeChild: function (id) { try { this.errors = []; pr.activate(false); pr.clearData(); var storedPr = dm.getStoredProduct(id); if (storedPr) { pr.setData(storedPr, "stored"); pr.activate(true); } else { dm.loadData(id, 'product', function (loaded) { if (loaded === undefined) { pg.errors.push(pg.canNotLoadProduct); } else { loaded.changed = false; for (let i = 0; i <
loaded.properties.length; i++) { loaded.properties[i].error = {}; loaded.properties[i].error.toLong = false; loaded.properties[i].error.notSelected = false; loaded.properties[i].value = ''; loaded.properties[i].color = {}; for (let o = 0; o < loaded.properties[i].options.length; o++) { loaded.properties[i].options[o].disabled = false; loaded.properties[i].options[o].color = {}; } } pr.setData(loaded, "loaded"); pr.activate(true); } }); } } catch (error) { pgs.abort();} }, pButton: function
(product) { this.animate(product); this.collapsed = true; this.collapse(); this.invokeChild(product.id); }, animate: function (product) { for (let i = 0; i < this.products.length; i++) { this.products[i].active = false; } product.active = true; }, collapse: function () { for (let i = 0; i < this.products.length; i++) { if (this.collapsed) { if (!this.products[i].active) this.products[i].collapsed = true } else { this.products[i].collapsed = false; } } }, backButton: function () { try {
this.errors = []; pr.activate(false); pr.clearData(); this.collapsed = false; this.collapse(); } catch (error) { pgs.abort(); } } }, }); var pr = new Vue({ el: '#productDiv', data: { properties: [], id: '', errors: [], sendRequestLabel: '', orderCodeLabel: '', notSelectedErrorLabel: '', toLongErrorLabel: '', reloadLabel: '', quantityLabel: { en: 'Quantity', sl: 'Količina' }, orderCode: "", quantity: 1, context: context, active: false, abort: false, changes: false, }, methods: { setData:
function (product, dataSource) { try { this.properties = product.properties; this.id = product.id; this.changes = product.changed; if (!product.changed) { this.configDefaultSettings(); } this.parseOrderCode(); } catch (error) { pgs.abort();} }, activate: function (bool) { this.active = bool; }, clearData: function () { if (this.changes) dm.storeProduct({ id: this.id, properties: this.properties, changed: true }); this.properties = []; this.id = []; this.orderCode = ""; this.changes = false;
this.quantity = 1; }, reloadButton: function () { dm.deleteStoredProduct(this.id); this.changes = false; pg.invokeChild(this.id); }, configDefaultSettings: function () { for (let i = 0; i < this.properties.length; i++) { this.setDefault(this.properties[i]); } this.enforceConstraints(0); }, setDefault: function (property) { try { var defaultSetBool = false; for (let i = 0; i < property.options.length; i++) { if (property.options[i].default === 'TRUE' &&
!property.options[i].disabled) { property.value = property.options[i].code; defaultSetBool = true; } } var notDisabled = []; for (let i = 0; i < property.options.length; i++) { if (!property.options[i].disabled) { notDisabled.push(property.options[i]); } } if (notDisabled.length === 1) { property.value = notDisabled[0].code; defaultSetBool = true; } if (!defaultSetBool) { property.value = ""; } if (this.isCustomStringProperty(property)) { property.value = ""; } } catch (error) {
pgs.abort();} }, setSelected: function () { for (let i = 0; i < this.properties.length; i++) { if (this.properties[i].value !== "") { this.properties[i].error.notSelected = false; this.properties[i].color = {} } if (this.isCustomStringProperty(this.properties[i]) && this.properties[i].options[0].disabled) { this.properties[i].error.notSelected = false; this.properties[i].color = {} } } this.changes = true; this.enforceConstraints(0); this.parseOrderCode(); }, isCustomStringProperty:
function (property) { try { if (property.options[0].code.startsWith("string") || property.options[0].code.startsWith("String")) { return true } return false; } catch (error) { pgs.abort();} }, enforceConstraints: function (depth) { try { if (depth > 10) { throw Error(); } var truths = []; for (let i = 0; i < this.properties.length; i++) { truths.push({ property: this.properties[i].id, option: this.properties[i].value, }); } var enforcedBool = false; for (let p = 0; p <
this.properties.length; p++) { var seledtedWasDisabledBool = false; var prop = this.properties[p]; for (let o = 0; o < prop.options.length; o++) { if (this.isCustomStringProperty(prop) && prop.options[0].disabled && lm.getTruth(prop.options[o].constraints, truths)) { } else if (prop.options[o].constraints !== '' && lm.getTruth(prop.options[o].constraints, truths)) { prop.options[o].disabled = true; prop.options[o].color = { color: '#b3b3b3' } if (prop.value ===
prop.options[o].code) { seledtedWasDisabledBool = true; this.animateAutoChange(prop); enforcedBool = true; } if (this.isCustomStringProperty(prop)) { prop.value = ""; prop.error.notSelected = false; prop.color = {} this.animateAutoChange(prop); } } else { prop.options[o].disabled = false; prop.options[o].color = {} } } if (seledtedWasDisabledBool) { this.setDefault(prop); } if (this.isCustomStringProperty(prop)) { var limit = ""; for (let i = 0; i < prop.options[0].code.length; i++) { if
(!isNaN(prop.options[0].code.charAt(i))) { limit += prop.options[0].code.charAt(i); } } limit = parseInt(limit); if (prop.value.length > limit) { prop.error.toLong = true; prop.color = { color: '#ffcc99' } } else { prop.error.toLong = false; if (!prop.error.notSelected) prop.color = {} } } } if (enforcedBool) this.enforceConstraints(depth + 1); } catch (error) { pgs.abort();} }, parseOrderCode: function () { var orderString = ""; for (let i = 0; i < this.properties.length; i++) {
orderString += this.properties[i].value; if (this.properties[i].value === "") { orderString += "-"; } if (i !== this.properties.length - 1) { orderString += " "; } } this.orderCode = orderString; }, animateAutoChange: function (prop) { try { if (document.getElementById('row' + prop.id)) { var element = document.getElementById('row' + prop.id); element.style = "background-color: #ffcc99" setTimeout(function () { element.style = "background-color: white" }, 150) } } catch (error) { pgs.abort();}
}, getOptionName: function (prop) { if (prop.value === '') return ' '; if (this.isCustomStringProperty(prop)) { return ' '; } for (let i = 0; i < prop.options.length; i++) { if (prop.options[i].code === prop.value) return prop.options[i].name[context.language]; } }, optionName: function(option){ if(option.name[context.language] === ''){ return ''; } return ': ' + option.name[context.language]; }, sendRequest: function () { var valid = true; for (let i = 0; i < this.properties.length; i++)
{ if (this.properties[i].value === "" && this.properties[i].required !== 'FALSE') { this.properties[i].error.notSelected = true; this.properties[i].color = { color: '#ffcc99' } if (this.isCustomStringProperty(this.properties[i])) { if (this.properties[i].options[0].disabled) { this.properties[i].error.notSelected = false; this.properties[i].color = {} } } } if (this.properties[i].error.notSelected || this.properties[i].error.toLong) { valid = false; } } if (valid) { try { var
orderMessage = ""; orderMessage += this.quantityLabel[context.language] + ": " + this.quantity + " "; orderMessage += this.orderCode + " "; for (let i = 1; i < this.properties.length; i++) { if (this.isCustomStringProperty(this.properties[i])) { orderMessage += this.properties[i].name[context.language] + ": " + this.properties[i].value + " "; } else { orderMessage += this.properties[i].name[context.language] + ": " + this.getOptionName(this.properties[i]) + " "; } }
document.getElementById("orderCode").value = orderMessage; document.getElementById("configuratorSendOrder").click(); } catch (error) { pgs.abort();} } } } });
-
Kontakt prodaja
Luka Tamše
E-pošta Vizitka -
Tehnična dokumentacija
Data sheet MC 3x0 PDF 580 kB Users manual MC3x0x PDF 1,997 kB Base GSD file for MC330H GSD 3 kB Electrical Measuring Instruments PDF 5,964 kB Leaflet MC3xx PDF 4,193 kB -
Certifikati
Test report for MC330 PDF 614 kB Type Approval Certificate for MC 3x0 (ship version) PDF 573 kB EC declaration of Conformity MC3x0 PDF 481 kB EC declaration of Conformity MC3x0 JPG 714 kB