2013-04-26 6 views
7

मुझे पुराने सॉफ्टवेयर की डेटा फ़ाइलों से डेटा निकालने का काम सौंपा गया है - सीआईएमप्लिकिटी एचएमआई प्लांट संस्करण संस्करण 6.0। यह 2002 से एक एससीएडीए सॉफ्टवेयर है। मेरे पास डेटा फाइल निर्देशिका की एक प्रति है जिसमें बहुत सी * डीएटी और * .IDX फ़ाइलें शामिल हैं। मुझे इस डेटा को सीएसवी या SQL डेटाबेस में निकालने की आवश्यकता है। कुछ डीएटी फाइलें केवल सादे-पाठ हैं, लेकिन दूसरों के पास बाइनरी जैसी प्रारूप है और जब पीएसपीएड में खोला जाता है, तो हेक्स व्यू मोड में दिखाई देता है।मैं स्काडा सिंपलिटी सॉफ़्टवेयर की डीएटी और आईडीएक्स फाइलों से डेटा कैसे निकाल सकता हूं?

इन फ़ाइलों से डेटा को विश्वसनीय रूप से पढ़ने और निकालने के लिए मैं किस टूल का उपयोग कर सकता हूं?

टीआईए।

अद्यतन: मैं डेटा फ़ाइलों के साथ निर्देशिका की एक निर्देशिका प्रविष्टि जोड़ी है:

Directory of C:\tmp\xxxxxxII\data 

04/30/2013 01:53 PM <DIR>   . 
04/30/2013 01:53 PM <DIR>   .. 
09/02/2008 10:46 AM   17,260 1220323606.clz 
09/02/2008 10:46 AM   60,490 1220323607.clz 
09/10/2008 06:36 PM   288,554 1220323608.clz 
09/02/2008 10:46 AM   66,977 1220323609.clz 
09/10/2008 06:37 PM   23,900 1220323610.clz 
09/10/2008 06:37 PM   19,162 1220323611.clz 
09/10/2008 06:48 PM   37,596 1220323612.clz 
09/10/2008 06:49 PM   27,882 1220323613.clz 
09/10/2008 06:49 PM   47,850 1220323614.clz 
09/10/2008 06:50 PM   47,816 1220323615.clz 
09/10/2008 06:52 PM   3,427,511 1220323616.clz 
09/02/2008 10:46 AM   31,169 1220323617.clz 
09/10/2008 06:53 PM   30,353 1220323618.clz 
09/02/2008 10:46 AM   122,159 1220323619.clz 
09/02/2008 10:50 AM   3,539,414 1220323828.clz 
09/10/2008 06:02 PM    208 action.dat 
09/10/2008 06:02 PM    3,072 action.idx 
02/19/2002 11:58 PM    5,636 alarm_class.dat 
02/19/2002 11:58 PM    3,072 alarm_class.idx 
09/23/2008 04:26 PM   137,128 alarm_def.dat 
09/23/2008 04:26 PM   49,152 alarm_def.idx 
02/19/2002 11:58 PM    2,929 alarm_field.dat 
02/19/2002 11:58 PM    4,096 alarm_field.idx 
02/19/2002 11:58 PM     0 alarm_intproc.dat 
02/19/2002 11:58 PM    4,096 alarm_intproc.idx 
02/19/2002 11:58 PM    135 alarm_mgr.dat 
02/19/2002 11:58 PM    3,072 alarm_mgr.idx 
09/23/2008 04:26 PM   69,531 alarm_routing.dat 
09/23/2008 04:26 PM   387,072 alarm_routing.idx 
02/19/2002 11:58 PM    912 alarm_type.dat 
02/19/2002 11:58 PM    3,072 alarm_type.idx 
02/19/2002 11:58 PM     0 alm_setup.dat 
02/19/2002 11:58 PM    4,096 alm_setup.idx 
02/19/2002 11:58 PM     0 alm_setup_cl.dat 
02/19/2002 11:58 PM    3,072 alm_setup_cl.idx 
02/19/2002 11:58 PM     0 alm_setup_fr.dat 
02/19/2002 11:58 PM    3,072 alm_setup_fr.idx 
02/19/2002 11:58 PM     0 alm_user.dat 
02/19/2002 11:58 PM    3,072 alm_user.idx 
02/19/2002 11:58 PM     0 alrm_blk_alarm.dat 
02/19/2002 11:58 PM    4,096 alrm_blk_alarm.idx 
02/19/2002 11:58 PM     0 alrm_blk_group.dat 
02/19/2002 11:58 PM    3,072 alrm_blk_group.idx 
02/11/1998 04:05 PM    602 amlp.cfg 
09/10/2008 06:53 PM    2,415 class.dat 
09/10/2008 06:53 PM    3,072 class.idx 
02/11/1998 04:06 PM     5 client.cfg 
09/10/2008 02:14 PM    393 comm_exe.dat 
09/10/2008 02:14 PM    4,096 comm_exe.idx 
09/23/2008 03:40 PM    9,893 datalog.dat 
09/23/2008 03:40 PM    5,120 datalog.idx 
02/19/2002 11:58 PM    1,272 data_field.dat 
02/19/2002 11:58 PM    3,072 data_field.idx 
09/04/2008 03:10 PM    1,218 dbms_def.dat 
09/04/2008 03:10 PM    3,072 dbms_def.idx 
09/16/2008 10:45 AM   37,820 derived_point.dat 
09/16/2008 10:45 AM   16,384 derived_point.idx 
09/10/2008 02:14 PM    256 devcom_proc.dat 
09/10/2008 02:14 PM    4,096 devcom_proc.idx 
09/10/2008 02:16 PM    1,305 device.dat 
09/10/2008 02:16 PM    5,120 device.idx 
09/23/2008 04:26 PM   2,243,024 device_point.dat 
09/23/2008 04:26 PM   1,745,920 device_point.idx 
09/23/2008 04:04 PM     6 dyn_cfg.cfg 
02/19/2002 11:58 PM     0 em_alu.dat 
02/19/2002 11:58 PM    3,072 em_alu.idx 
02/19/2002 11:58 PM     0 es_eu_conv.dat 
02/19/2002 11:58 PM    3,072 es_eu_conv.idx 
02/19/2002 11:58 PM     0 es_point_info.dat 
02/19/2002 11:58 PM    4,096 es_point_info.idx 
09/23/2008 04:26 PM   719,712 eu_conv.dat 
09/23/2008 04:26 PM   78,848 eu_conv.idx 
09/10/2008 06:02 PM    166 event.dat 
09/10/2008 06:02 PM    3,072 event.idx 
09/10/2008 06:03 PM    121 event_action.dat 
09/10/2008 06:03 PM    3,072 event_action.idx 
04/30/2013 01:53 PM     0 f.txt 
02/19/2002 09:49 PM   199,302 field_def.dat 
02/19/2002 09:49 PM   87,040 field_def.idx 
09/10/2008 02:15 PM    1,608 fr.dat 
09/10/2008 02:15 PM    5,120 fr.idx 
07/15/2010 03:41 PM    262 gef_cfg.ini 
09/23/2008 03:39 PM    6,435 glb_parms.dat 
09/23/2008 03:39 PM    6,144 glb_parms.idx 
12/15/1999 11:16 AM    899 ie_deflds.cfg 
11/14/2001 11:06 AM    1,101 ie_formats.cfg 
02/19/2002 09:49 PM    7,548 keyconst.dat 
02/19/2002 09:49 PM   18,432 keyconst.idx 
02/19/2002 09:49 PM   16,984 key_field.dat 
02/19/2002 09:49 PM   13,312 key_field.idx 
02/19/2002 09:49 PM    9,546 lenconst.dat 
02/19/2002 09:49 PM   17,408 lenconst.idx 
09/10/2008 02:14 PM    990 logproc.dat 
09/10/2008 02:14 PM    3,072 logproc.idx 
09/23/2008 03:54 PM   47,952 log_attrib.dat 
09/23/2008 03:54 PM   77,824 log_attrib.idx 
09/23/2008 03:40 PM    1,848 log_event.dat 
09/23/2008 03:40 PM    4,096 log_event.idx 
08/05/1998 09:04 AM    1,671 log_names.cfg 
09/10/2008 02:14 PM    121 master.mcp 
07/18/2008 06:32 PM    32 master_mcp.app 
09/10/2008 02:14 PM    29 master_mcp.dc 
07/18/2008 06:32 PM    52 master_mcp.rp 
09/28/2001 02:22 PM   17,449 master_opc_0.ini 
02/19/2002 11:58 PM   11,312 meas_assoc.dat 
02/19/2002 11:58 PM    8,192 meas_assoc.idx 
02/19/2002 11:58 PM    276 meas_system.dat 
02/19/2002 11:58 PM    3,072 meas_system.idx 
02/19/2002 11:58 PM    1,096 meas_unit.dat 
02/19/2002 11:58 PM    3,072 meas_unit.idx 
09/10/2008 02:14 PM    365 model.dat 
09/10/2008 02:14 PM    4,096 model.idx 
07/18/2008 06:32 PM    86 node.dat 
07/18/2008 06:32 PM    3,072 node.idx 
09/10/2008 02:14 PM    2,167 node_logproc.dat 
09/10/2008 02:14 PM    5,120 node_logproc.idx 
09/23/2008 04:26 PM   32,890 object.dat 
09/23/2008 04:26 PM   28,672 object.idx 
09/23/2008 04:26 PM   310,464 object_attrib.dat 
09/23/2008 04:26 PM   293,888 object_attrib.idx 
09/23/2008 04:26 PM   22,080 object_routing.dat 
09/23/2008 04:26 PM   30,720 object_routing.idx 
09/10/2008 02:14 PM    715 physproc.dat 
09/10/2008 02:14 PM    5,120 physproc.idx 
04/26/2010 12:27 PM   2,527,608 point.dat 
04/26/2010 12:27 PM   637,952 point.idx 
02/19/2002 11:58 PM    95 point_alstr.dat 
02/19/2002 11:58 PM    3,072 point_alstr.idx 
02/19/2002 11:58 PM     0 point_disp.dat 
02/19/2002 11:58 PM    3,072 point_disp.idx 
02/19/2002 11:58 PM    194 point_enum.dat 
02/19/2002 11:58 PM    3,072 point_enum.idx 
02/19/2002 11:58 PM    216 point_enum_fld.dat 
02/19/2002 11:58 PM    4,096 point_enum_fld.idx 
02/19/2002 11:58 PM    609 point_type.dat 
02/19/2002 11:58 PM    3,072 point_type.idx 
09/10/2008 02:14 PM    129 port_comm.dat 
09/10/2008 02:14 PM    4,096 port_comm.idx 
09/10/2008 02:14 PM    42 port_list.dat 
09/10/2008 02:14 PM    4,096 port_list.idx 
09/10/2008 02:14 PM    294 port_type.dat 
09/10/2008 02:14 PM    3,072 port_type.idx 
02/11/1998 04:05 PM     5 projects.cfg 
09/10/2008 02:14 PM    123 protocol.dat 
09/10/2008 02:14 PM    3,072 protocol.idx 
02/19/2002 11:58 PM    37 ptmgmt.dat 
02/19/2002 11:58 PM    3,072 ptmgmt.idx 
04/27/2010 03:25 PM   19,343 ptx_points.cfg 
02/19/2002 11:58 PM     0 pt_uf_assoc.dat 
02/19/2002 11:58 PM    4,096 pt_uf_assoc.idx 
02/19/2002 11:58 PM    93 pt_uf_sets.dat 
02/19/2002 11:58 PM    3,072 pt_uf_sets.idx 
02/19/2002 11:58 PM    1,568 pt_user_fields.dat 
02/19/2002 11:58 PM    4,096 pt_user_fields.idx 
02/19/2002 09:49 PM    9,856 record_def.dat 
02/19/2002 09:49 PM   13,312 record_def.idx 
02/19/2002 11:58 PM     0 redund_addrs.dat 
02/19/2002 11:58 PM    4,096 redund_addrs.idx 
02/19/2002 11:58 PM    111 role.dat 
02/19/2002 11:58 PM    3,072 role.idx 
02/19/2002 11:58 PM    159 role_subsys.dat 
02/19/2002 11:58 PM    4,096 role_subsys.idx 
09/10/2008 02:14 PM    1,067 service.dat 
09/10/2008 02:14 PM    5,120 service.idx 
02/19/2002 11:58 PM    181 service_use.dat 
02/19/2002 11:58 PM    3,072 service_use.idx 
09/23/2008 03:57 PM    711 TCPIP0.ini 
02/19/2002 11:58 PM     0 trend_pt.dat 
02/19/2002 11:58 PM    3,072 trend_pt.idx 
09/02/2008 09:29 AM    434 user.dat 
09/02/2008 09:29 AM    4,096 user.idx 
09/10/2008 02:15 PM    784 user_fr.dat 
09/10/2008 02:15 PM    6,144 user_fr.idx 
07/15/2010 03:40 PM    15 warmdata.sav 
      174 File(s)  17,990,662 bytes 

अद्यतन: point.dat की स्क्रीनशॉट संलग्न: enter image description here

+1

फ़ाइल (s), मुझे यकीन है कि मदद की किस तरह आप उम्मीद कर रहे हैं नहीं कर रहा हूँ का एक नमूना देखकर बिना? –

+3

फ़ाइल के नमूने के बारे में कैसे? निर्देशिका सूची मदद नहीं करता है। आम तौर पर 'idx'' .dat' (डेटा) फ़ाइल के "अनुक्रमणिका" के लिए होता है। जो कुछ आपने अभी तक प्रदान किया है, उसके साथ मैं आपकी मदद कर सकता हूं। –

+0

क्या आप * लिखना * एक उपकरण, * खरीद * एक उपकरण, या * ढूंढ * एक उपकरण चाहते हैं? – Beta

उत्तर

5

मेरे संवेदना, आप कर दिया गया है लगभग असंभव कार्य के साथ काम किया।

ठीक है, मुझे सिंपलिटी एचएमआई प्लांट संस्करण के बारे में बहुत कुछ नहीं पता है, जो मैं बाहर से देख सकता हूं उसे बचा सकता हूं। लेकिन शायद मैं आपको कुछ सहायक पॉइंटर्स दे सकता हूं, क्योंकि मैं औद्योगिक एचएमआई और इंजीनियरिंग सॉफ्टवेयर भी विकसित कर रहा हूं। (WinCC & पीसीएस 7)

सबसे पहले, प्रारूप 99% की एक निश्चितता के साथ एक मालिकाना प्रारूप है। जीई से प्राप्त होने वाली एकमात्र असली सहायता आप प्राप्त कर सकते हैं। सवाल यह है कि, क्या वे आपको और किस कीमत पर देंगे। (चूंकि आप डेटा निकालने का प्रयास कर रहे हैं, इसलिए आप शायद माइग्रेट कर रहे हैं, फिर उन्हें क्यों मदद करनी चाहिए।)

तो कुछ रिवर्स इंजीनियरिंग शायद क्रम में है। आप उस सॉफ्टवेयर को चाहते हैं जिसने प्रोजेक्ट बनाया है। वह इंजीनियरिंग पैकेज है और एचएमआई रन-टाइम सॉफ़्टवेयर नहीं है। (सॉफ्टवेयर का एक टुकड़ा हो सकता है।) आपकी कंपनी के पास अभी भी मूल परियोजना से लाइसेंस होना चाहिए।

वहां से आप या तो एक नई परियोजना बनाते हैं और देखते हैं कि क्या होता है और मौजूदा प्रोजेक्ट को लोड करता है और फिर चारों ओर खेलते हैं और डेटा में क्या परिवर्तन देखते हैं। यह महत्वपूर्ण है कि आप समझें कि सिस्टम में कौन सा डेटा है और आप इसे कहां पा सकते हैं।

यह ध्यान रखना महत्वपूर्ण है कि डेटा दो रूपों, प्रोजेक्ट कॉन्फ़िगरेशन और रन-टाइम डेटा में आता है।

प्रोजेक्ट कॉन्फ़िगरेशन वास्तव में डेटा नहीं है, यह "बस" कॉन्फ़िगरेशन है जो रन-टाइम सिस्टम को प्रदर्शित/प्रतिक्रिया देना चाहिए। प्रोजेक्ट डेटा उपयोगकर्ता, विचार/स्क्रीन, पीएलसी परिवर्तनीय बाइंडिंग या नियंत्रण स्क्रिप्ट जैसी चीजें हैं। मैं ईमानदारी से नहीं जानता कि आप इसे अधिकतर कुशलता से सीवीएस या डेटाबेस में कैसे रखना चाहते हैं। लेकिन यह संभव है कि WinCC MSSQL का उपयोग करता है। (एक डिफ़ॉल्ट पासवर्ड के साथ, धन्यवाद स्टक्सनेट)

रन-टाइम डेटा सरल है। यह या तो इवेंट लॉग हैं, जो ऑपरेटर कमांड, अलार्म और चेतावनियां या रिकॉर्ड किए गए मान जैसे रिकॉर्ड चीजें हैं। यह डेटा आसानी से निकाला जाना चाहिए, क्योंकि यह सख्ती से स्वरूपित है। यह पता लगाने के लिए कि आपको कहां और कहाँ दर्ज किया गया था, आपको इंजीनियरिंग सॉफ्टवेयर में प्रोजेक्ट खोलना चाहिए, वहां आपको लॉगिंग और रुझानों के बारे में सुराग मिलना चाहिए।

फिर भी आप अपने आप को एक अच्छा हेक्स संपादक और LOTS प्राप्त करना चाहते हैं।

परिशिष्ट:

के बाद आप सूची और स्क्रीनशॉट कहा, फ़ाइलें मेरे लिए 3/4 मतलब।

उदाहरण के लिए, alarm_class। * रन-टाइम बढ़ाए जा सकने वाले अलार्म के क्लिक्स शामिल हैं, अलार्म डेटा प्रकार के अलार्म टाइप करें, अलार्म_फील्ड में फील्ड अलाराम के लिए कॉन्फ़िगर किए गए अलार्म हैं, यानी पीएलसी, अलार्म_रउंटिंग रूटिंग या नेटवर्क त्रुटियां, alm_user शायद उपयोगकर्ता अलार्म हैं, यानी एचएमआई रनटाइम में स्क्रिप्ट से।

नाम में बिंदु वाला सब कुछ शायद "माप बिंदु" है, जो एक फ़ील्ड डिवाइस है; या तो एक सेंसर या एक actuator से एक प्रतिक्रिया।

उपयोगकर्ता के साथ सब कुछ, शायद कॉन्फ़िगर किए गए उपयोगकर्ता और उनकी अनुमतियां हैं।

redund_addrs पीएलसी या डिवाइस पते का नक्शा है जो प्राथमिक मूल्यों के अनावश्यक भाई बहन हैं।

पोर्ट के साथ सब कुछ शायद एससीएडीए सर्वर या पीएलसी पर "बंदरगाहों" के बारे में है, उदाहरण के लिए एफएफ, प्रोफिबस या प्रोफिनेट।

ऑब्जेक्ट के साथ सबकुछ शायद संरचनाएं है। वह तब होता है जब एकल चर (उर्फ टैग) फॉर्म पदानुक्रमित मूल्यों के लिए एक साथ बंधे होते हैं। उदाहरण के लिए एक सेंसर का मूल्य और इसकी स्थिति के बारे में सभी मूल्य एक संरचना में बंधे होते हैं, फिर इसे एक माप बिंदु के रूप में माना जाता है।

आपके द्वारा प्रदान किए गए हेक्स डंप को देखते समय, यह एक संरचित निरंतर लंबाई प्रारूप की तरह seams।

इस मामले में:

struct Point 
{ 
    char name[16] = "$ALARM.ACKED"; 
    char type[32] = "UDINT"; 
    char comment[128] = "..."; 
}; 

मूल्यों तो अंतरिक्ष "0x20" के साथ गद्देदार कर रहे हैं।

परिशिष्ट 2:

आप वास्तव में एक फ्लैट फ़ाइल डेटाबेस को देख सकते हैं, इस तरह के dBase की तरह है और प्रत्येक * डेटा .dat है और * मेज सूचकांक .idx। एक विचार है। यह लगभग 2000 में उपलब्ध डीबी प्रौद्योगिकी में कुछ समय निवेश करने के लिए भुगतान कर सकता है। फिर शायद आप डेटा को "डंप" कर सकते हैं।

+0

लंबे उत्तर के लिए धन्यवाद। इसका डीबेस प्रारूप नहीं है, मैंने कुछ डीबीएफ दर्शकों के साथ फाइल खोलने की कोशिश की और वे त्रुटिग्रस्त हो गए। कॉलम-स्थिति के अनुसार पाठ को सीमित करने के साथ, कई फाइलें सादे-पाठ प्रारूप हैं। –

+0

शायद यह [कोडबेस] (http://www.codebase.com/) है। उसमें * .dat और * .idx फ़ाइलें हैं; बस इसे एक परियोजना में देखा। लेकिन वहां कोई गारंटी नहीं है। – rioki

-1

:: निर्यात :: यदि आप event.idx फ़ाइल के लिए "idtpop घटना" मास्टर निर्देशिका प्रकार में एक कमांड प्रॉम्प्ट खुल यह एक फ़ाइल event.idt
इस फ़ाइल में पैदा करेगा नोटपैड में संपादित किया जा सकता या अन्य संपादक।

कोई भी डीएटी &। सिंपलसिटी की आईडीएक्स फाइलों को उसी तरह से एक्सेस किया जा सकता है।

:: आयात: यदि आप चाहते हैं आवश्यक परिवर्तन कमांड प्रॉम्प्ट प्रकार scpop घटना
में आयात करने के लिए, इस घटना को फ़ाइल पुन: उत्पन्न होगी। अन्य फाइलें भी करें।

0

नोवा ग्लाडसन सही है, लेकिन यह केवल उस प्रणाली पर काम करता है जिस पर सिंपिकिटी स्थापित है।

सिंपलसिटी अभी भी सक्रिय रूप से विकसित और विपणन किया जा रहा है। नवीनतम संस्करण संस्करण 6 खोलने में बहुत सक्षम है।

Cimplicity HMI & Scada

संबंधित मुद्दे

 संबंधित मुद्दे