st-ten-12
This commit is contained in:
parent
4b46dc53cc
commit
272e55fbe4
118
config/csv_import/backup_csv/ST-TEN-12_M2_C04.csv
Normal file
118
config/csv_import/backup_csv/ST-TEN-12_M2_C04.csv
Normal file
|
|
@ -0,0 +1,118 @@
|
|||
test_visione_abilitato,stampa_etichetta_abilitata,prova_tenuta_abilitata,tempo_di_test_2,tempo_pre_riempimento,codice_ricetta,prova_tenuta_abilitata_2,pressione_pre_riempimento_2,modello_etichetta,codice_a_barre,part_number,pid_pressure_correction,pressione_di_test_2,tempo_di_test,cliente,tempo_pre_riempimento_2,pressione_pre_riempimento,ricetta_visione,verifica_codice_a_barre_abilitata,pressione_di_test
|
||||
,x,x,10,0,5803148257,x,1000,ETA30x16_203dpi.prn,,5803148257,105,15000,10,,0,5000,,x,5000
|
||||
,x,x,10,0,5803148263,x,1000,ETA30x16_203dpi.prn,,5803148263,105,15000,10,,0,5000,,x,5000
|
||||
,x,x,10,0,5803148264,x,1000,ETA30x16_203dpi.prn,,5803148264,105,15000,10,,0,5000,,x,5000
|
||||
,x,x,10,0,5803148265,x,1000,ETA30x16_203dpi.prn,,5803148265,105,15000,10,,0,5000,,x,5000
|
||||
,x,x,10,0,5803148266,x,1000,ETA30x16_203dpi.prn,,5803148266,105,15000,10,,0,5000,,x,5000
|
||||
,x,x,10,0,5803148267,x,1000,ETA30x16_203dpi.prn,,5803148267,105,15000,10,,0,5000,,x,5000
|
||||
,x,x,10,0,5803148268,x,1000,ETA30x16_203dpi.prn,,5803148268,105,15000,10,,0,5000,,x,5000
|
||||
,x,x,10,0,5803148269,x,1000,ETA30x16_203dpi.prn,,5803148269,105,15000,10,,0,5000,,x,5000
|
||||
,x,x,10,0,5803166717,x,1000,ETA30x16_203dpi.prn,,5803166717,105,15000,10,,0,5000,,x,5000
|
||||
,x,x,10,0,5803167128,x,1000,ETA30x16_203dpi.prn,,5803167128,105,15000,10,,0,5000,,x,5000
|
||||
,x,x,10,0,5802966801,x,1000,ETA30x16_203dpi.prn,,5802966801,105,15000,10,,0,5000,,x,5000
|
||||
,x,x,10,0,PIPE-IN-PRE-COOL,x,1000,EtichettaR5_CNH.prn,,PIPE-IN-PRE-COOL,105,15000,30,P16,0,0,,x,3500
|
||||
,x,x,10,0,HOSE-JNCTN TO W,x,1000,EtichettaR5_CNH.prn,,HOSE-JNCTN TO W,105,15000,30,P16,0,0,,x,3500
|
||||
,x,x,10,0,HOSE-IPU-OUTLET,x,1000,EtichettaR5_CNH.prn,,HOSE-IPU-OUTLET,105,15000,20,P16,0,0,,x,3000
|
||||
,x,x,10,0,HOSE-TO-MCU,x,1000,EtichettaR5_CNH.prn,,HOSE-TO-MCU,105,15000,20,P16,0,0,,x,3000
|
||||
,x,x,10,0,HOSE-LH-LTR-OUTL,x,1000,EtichettaR5_CNH.prn,,HOSE-LH-LTR-OUTL,105,15000,30,P16,0,0,,x,3000
|
||||
,x,x,10,0,HOSE-WCACS-TO,x,1000,EtichettaR5_CNH.prn,,HOSE-WCACS-TO,105,15000,20,P16,0,0,,x,3000
|
||||
,x,x,10,0,HOSE-RH-LTR-OUT,x,1000,EtichettaR5_CNH.prn,,HOSE-RH-LTR-OUT,105,15000,20,P16,0,0,,x,3000
|
||||
,x,x,10,0,MY83-6B748-BA,x,1000,ERRECINQUE_flag_qr_only.prn,,MY83-6B748-BA,105,15000,30,AST0N MARTIN,0,0,,x,7000
|
||||
,x,x,10,0,5802915821,x,1000,ETA30x16_203dpi.prn,,5802915821,105,15000,10,,0,0,,x,5000
|
||||
,x,x,10,0,5802915822,x,1000,ETA30x16_203dpi.prn,,5802915822,105,15000,10,,0,0,,x,5000
|
||||
,x,x,10,0,60192054 REV01,x,1000,ERRECINQUE_flag_qr_only.prn,,60192054 REV01,105,15000,10,LANCIA BOLZANO,0,0,,x,8000
|
||||
,x,x,10,0,5801862227,x,1000,ERRECINQUE_flag_qr_only.prn,,5801862227,105,15000,10,LANCIA BOLZANO,0,0,,x,8000
|
||||
,x,x,10,0,5801970064 REV 0,x,1000,ERRECINQUE_flag_qr_only.prn,,5801970064 REV 0,105,15000,10,LANCIA BOLZANO,0,0,,x,8000
|
||||
,x,x,10,0,5801970066 REV 1,x,1000,ERRECINQUE_flag_qr_only.prn,,5801970066 REV 1,105,15000,10,LANCIA BOLZANO,0,0,,x,8000
|
||||
,x,x,10,0,5801970065 REV0,x,1000,ERRECINQUE_flag_qr_only.prn,,5801970065 REV0,105,15000,10,LANCIA BOLZANO,0,0,,x,8000
|
||||
,x,x,10,0,5801970067 REV0,x,1000,ERRECINQUE_flag_qr_only.prn,,5801970067 REV0,105,15000,10,LANCIA BOLZANO,0,0,,x,8000
|
||||
,x,x,10,0,5802831451,x,1000,ETA30x16_203dpi.prn,,5802831451,105,15000,10,,0,0,,x,5000
|
||||
,x,x,10,0,5802831453,x,1000,ETA30x16_203dpi.prn,,5802831453,105,15000,10,,0,0,,x,5000
|
||||
,x,x,10,0,5802860939,x,1000,ETA30x16_203dpi.prn,,5802860939,105,15000,10,,0,0,,x,5000
|
||||
,x,x,10,0,5802831450,x,1000,ETA30x16_203dpi.prn,,5802831450,105,15000,10,,0,0,,x,5000
|
||||
,x,x,10,0,5802831452,x,1000,ETA30x16_203dpi.prn,,5802831452,105,15000,10,,0,0,,x,5000
|
||||
,x,x,10,0,5802860512,x,1000,ETA30x16_203dpi.prn,,5802860512,105,15000,10,,0,0,,x,5000
|
||||
,x,x,10,0,PY83-6B747-BA,x,1000,ERRECINQUE_flag_qr_only.prn,,PY83-6B747-BA,105,15000,30,AST0N MARTIN,0,0,,x,7000
|
||||
,x,x,10,0,PY83-6B748-BA,x,1000,ERRECINQUE_flag_qr_only.prn,,PY83-6B748-BA,105,15000,30,AST0N MARTIN,0,0,,x,7000
|
||||
,x,x,10,0,5802908563,x,1000,EtichettaR5_CNH.prn,,5802908563,105,15000,10,FPT - 13535,0,0,,x,2000
|
||||
,x,x,10,0,91752479,x,1000,EtichettaR5_CNH.prn,,91752479,105,15000,50,CNH - BNJ31,0,0,,x,2000
|
||||
,x,x,10,0,5802878056,x,1000,ETA30x16_203dpi.prn,,5802878056,105,15000,10,,0,0,,x,5000
|
||||
,x,x,10,0,5802967436,x,1000,ETA30x16_203dpi.prn,,5802967436,105,15000,10,,0,0,,x,5000
|
||||
,x,x,10,0,5802989226,x,1000,ERRECINQUE_flag_qr_only.prn,,5802989226,105,15000,10,,0,0,,x,2000
|
||||
,x,x,10,0,5803028303,x,1000,ERRECINQUE_flag_qr_only.prn,,5803028303,105,15000,20,,0,0,,x,2000
|
||||
,x,x,10,0,5802989036,x,1000,ERRECINQUE_flag_qr_only.prn,,5802989036,105,15000,20,,0,0,,x,2000
|
||||
,x,x,10,0,5802269836,x,1000,ERRECINQUE_flag_qr_only.prn,,5802269836,105,15000,20,,0,0,,x,3000
|
||||
,x,x,10,0,91713309 REV.A,x,1000,EtichettaR5_CNH.prn,,91713309 REV.A,105,15000,10,CNH - BNJ31,0,0,,x,2000
|
||||
,x,x,10,0,TBG-915988,x,1000,SAGOM.prn,,TBG-915988,105,15000,20,SAGOM TUBI,0,0,000952054.ini,x,3100
|
||||
,x,x,10,0,TBG-915989,x,1000,SAGOM.prn,,TBG-915989,105,15000,20,SAGOM TUBI,0,0,000952054.ini,x,3100
|
||||
,x,x,10,0,5803402004,x,1000,ETA30x16_203dpi.prn,,5803402004,105,15000,20,FPT,0,1000,000952054.ini,x,2000
|
||||
,x,x,10,0,5803402203,x,1000,ETA30x16_203dpi.prn,,5803402203,105,15000,20,FPT,0,1000,000952054.ini,x,2000
|
||||
,x,x,10,0,055045415,x,1000,ETA30x16_203dpi.prn,,055045415,105,15000,30,FERRARI,0,1000,000952054.ini,x,2100
|
||||
,x,x,10,0,16EA019SP,x,1000,EtichettaR5_CNH.prn,,16EA019SP,105,15000,60,HOSE,0,0,,x,2000
|
||||
,x,x,10,0,16FC056CP REV02,x,1000,EtichettaR5_CNH.prn,,16FC056CP REV02,105,15000,20,P16,0,0,,x,1000
|
||||
,x,x,10,0,16FC069CP REV01,x,1000,EtichettaR5_CNH.prn,,16FC069CP REV01,105,15000,20,P16,0,0,,x,1000
|
||||
,x,x,10,0,16FC246CP REV01,x,1000,EtichettaR5_CNH.prn,,16FC246CP REV01,105,15000,30,P16,0,0,,x,1000
|
||||
,x,x,10,0,16FC250CP REV01,x,1000,EtichettaR5_CNH.prn,,16FC250CP REV01,105,15000,10,P16,0,0,,x,200
|
||||
,x,x,10,0,16L0058CP REV02,x,1000,EtichettaR5_CNH.prn,,16L0058CP REV02,105,15000,30,P16,0,0,,x,3500
|
||||
,x,x,10,0,16L0180CP REV04,x,1000,EtichettaR5_CNH.prn,,16L0180CP REV04,105,15000,30,P16,0,0,,x,3000
|
||||
,x,x,10,0,16LA642CP REV01,x,1000,EtichettaR5_CNH.prn,,16LA642CP REV01,105,15000,30,P16,0,0,,x,3500
|
||||
,x,x,10,0,5803148256,x,1000,ETA30x16_203dpi.prn,,5803148256,105,15000,10,,0,5000,000952054.ini,x,5000
|
||||
,x,x,10,0,000952054,x,1000,000952054.prn,,000952054,105,15000,30,FERRARI,0,2200,000952054.ini,x,2200
|
||||
,x,x,10,0,000976097,x,1000,ETA30x16_203dpi.prn,,000976097,105,15000,10,FERRARI,0,1000,000952054.ini,x,3500
|
||||
,x,x,10,0,A68507016000,x,1000,ERRECINQUE_flag_qr_only.prn,,A68507016000,105,15000,10,KTM,0,0,,x,7200
|
||||
,x,x,10,0,055017118,x,1000,ERRECINQUE_flag_qr_only.prn,,055017118,105,15000,10,FERRARI,0,1000,000952054.ini,x,2600
|
||||
,x,x,10,0,055017119,x,1000,ERRECINQUE_flag_qr_only.prn,,055017119,105,15000,10,FERRARI,0,1000,000952054.ini,x,2600
|
||||
,x,x,10,0,055017120,x,1000,ERRECINQUE_flag_qr_only.prn,,055017120,105,15000,10,FERRARI,0,1000,000952054.ini,x,2600
|
||||
,x,x,10,0,55017125,x,1000,ERRECINQUE_flag_qr_only.prn,,55017125,105,15000,10,FERRARI,0,1000,000952054.ini,x,2600
|
||||
,x,x,10,0,6689098A1,x,1000,EtichettaR5_Montaggio_2prove.prn,,6689098A1,105,15000,20,,0,0,000952054.ini,x,6000
|
||||
,x,x,10,0,6689099A1,x,1000,EtichettaR5_Montaggio_2prove.prn,,6689099A1,105,15000,20,,0,0,000952054.ini,x,6000
|
||||
,x,x,10,0,6689101A1,x,1000,EtichettaR5_Montaggio_2prove.prn,,6689101A1,105,15000,20,,0,0,000952054.ini,x,6000
|
||||
,x,x,10,0,055024035,x,1000,ERRECINQUE_flag_qr_only.prn,,055024035,105,15000,10,FERRARI,0,1000,000952054.ini,x,2500
|
||||
,x,x,10,0,5803030799,x,1000,ERRECINQUE_flag_qr_only.prn,,5803030799,105,15000,10,IVECO,0,0,,x,4000
|
||||
,x,x,10,0,5803030800,x,1000,ERRECINQUE_flag_qr_only.prn,,5803030800,105,15000,10,IVECO,0,0,,x,4000
|
||||
,x,x,10,0,5803030840,x,1000,ERRECINQUE_flag_qr_only.prn,,5803030840,105,15000,10,IVECO,0,0,,x,4000
|
||||
,x,x,10,0,5803030842,x,1000,ERRECINQUE_flag_qr_only.prn,,5803030842,105,15000,10,IVECO,0,0,,x,4000
|
||||
,x,x,10,0,5803030878,x,1000,ERRECINQUE_flag_qr_only.prn,,5803030878,105,15000,10,IVECO,0,0,,x,4000
|
||||
,x,x,10,0,5803083634,x,1000,ETA30x16_203dpi.prn,,5803083634,105,15000,20,IVECO,0,3000,,x,2000
|
||||
,x,x,10,0,5802726236 REV02,x,1000,EtichettaR5_CNH.prn,,5802726236 REV02,105,15000,10,IVECO,0,0,,x,500
|
||||
,x,x,10,0,5802726232 REV02,x,1000,EtichettaR5_CNH.prn,,5802726232 REV02,105,15000,10,IVECO,0,300,,x,500
|
||||
,x,x,10,0,5803031876,x,1000,EtichettaR5_CNH.prn,,5803031876,105,15000,10,IVECO,0,0,,x,500
|
||||
,x,x,10,0,TBG-919634,x,1000,SAGOM.prn,,TBG-919634,105,15000,20,SAGOM TUBI,0,0,000952054.ini,x,3100
|
||||
,x,x,10,0,TBG-919635,x,1000,SAGOM.prn,,TBG-919635,105,15000,20,SAGOM TUBI,0,0,000952054.ini,x,3100
|
||||
,x,x,10,0,55224503,x,1000,PRHoses.prn,,55224503,105,15000,15,Plastic and Rubber Hoses,0,1000,000952054.ini,x,3400
|
||||
,x,x,10,0,16L0046CP REV03,x,1000,EtichettaR5_CNH.prn,,16L0046CP REV03,105,15000,30,P16,0,2000,,x,3500
|
||||
,x,x,10,0,16L0075CP REV03,x,1000,EtichettaR5_CNH.prn,,16L0075CP REV03,105,15000,30,P16,0,0,,x,2500
|
||||
,x,x,10,0,16L0145CP REV3,x,1000,EtichettaR5_CNH.prn,,16L0145CP REV3,105,15000,20,P16,0,0,,x,3000
|
||||
,x,x,10,0,16LA336CP REV02,x,1000,EtichettaR5_CNH.prn,,16LA336CP REV02,105,15000,30,P16,0,0,,x,3500
|
||||
,x,x,10,0,16LA353CP REV02,x,1000,EtichettaR5_CNH.prn,,16LA353CP REV02,105,15000,30,P16,0,2000,,x,3500
|
||||
,x,x,10,0,16LA573CP REV01,x,1000,EtichettaR5_CNH.prn,,16LA573CP REV01,105,15000,20,P16,0,0,,x,3000
|
||||
,x,x,10,0,16L0007CP REV03,x,1000,EtichettaR5_CNH.prn,,16L0007CP REV03,105,15000,30,P16,0,0,,x,3000
|
||||
,x,x,10,0,12970-13-2382,x,1000,ERRECINQUE_flag_qr_only.prn,,12970-13-2382,105,15000,30,MULTIMATIC,0,0,,x,7000
|
||||
,x,x,10,0,12970-13-2384,x,1000,ERRECINQUE_flag_qr_only.prn,,12970-13-2384,105,15000,30,MULTIMATIC,0,0,,x,7000
|
||||
,x,x,10,0,12970-13-2386,x,1000,ERRECINQUE_flag_qr_only.prn,,12970-13-2386,105,15000,20,MULTIMATIC,0,0,,x,7000
|
||||
,x,x,10,0,5801384842 REV 0,x,1000,ERRECINQUE_flag_qr_only.prn,,5801384842 REV 0,105,15000,10,LANCIA BOLZANO,0,0,,x,8000
|
||||
,x,x,10,0,5802729983 REV 0,x,1000,ERRECINQUE_flag_qr_only.prn,,5802729983 REV 0,105,15000,10,LANCIA BOLZANO,0,0,,x,8000
|
||||
,x,x,10,0,5802731910 REV 0,x,1000,ERRECINQUE_flag_qr_only.prn,,5802731910 REV 0,105,15000,10,LANCIA BOLZANO,0,0,,x,8000
|
||||
,x,x,10,0,5801970063 REV0,x,1000,ERRECINQUE_flag_qr_only.prn,,5801970063 REV0,105,15000,10,LANCIA BOLZANO,0,0,,x,8000
|
||||
,x,x,10,0,5801384841 REV 0,x,1000,ERRECINQUE_flag_qr_only.prn,,5801384841 REV 0,105,15000,10,LANCIA BOLZANO,0,0,,x,8000
|
||||
,x,x,10,0,5801384840 REV0,x,1000,ERRECINQUE_flag_qr_only.prn,,5801384840 REV0,105,15000,10,LANCIA BOLZANO,0,0,,x,8000
|
||||
,x,x,10,0,504321531 REV 0,x,1000,ERRECINQUE_flag_qr_only.prn,,504321531 REV 0,105,15000,10,LANCIA BOLZANO,0,0,,x,8000
|
||||
,x,x,10,0,504321532 REV 0,x,1000,ERRECINQUE_flag_qr_only.prn,,504321532 REV 0,105,15000,10,LANCIA BOLZANO,0,0,,x,8000
|
||||
,x,x,10,0,5801384839 REV0,x,1000,ERRECINQUE_flag_qr_only.prn,,5801384839 REV0,105,15000,10,LANCIA BOLZANO,0,0,,x,8000
|
||||
,x,x,10,0,5803030264,x,1000,ERRECINQUE_flag_qr_only.prn,,5803030264,105,15000,10,IVECO,0,0,,x,4000
|
||||
,x,x,10,0,5803030758,x,1000,ERRECINQUE_flag_qr_only.prn,,5803030758,105,15000,10,IVECO,0,0,,x,4000
|
||||
,x,x,10,0,16LA661CP REV01,x,1000,EtichettaR5_CNH.prn,,16LA661CP REV01,105,15000,30,P16,0,2000,,x,3500
|
||||
,x,x,10,0,5803083561,x,1000,ETA30x16_203dpi.prn,,5803083561,105,15000,20,IVECO,0,3000,,x,3000
|
||||
,x,x,10,0,5803148261,x,1000,ETA30x16_203dpi.prn,,5803148261,105,15000,10,,0,5000,,x,5000
|
||||
,x,x,10,0,61907016000 IN.D,x,1000,000952054.prn,,61907016000 IN.D,105,15000,10,KTM,0,0,000952054.ini,x,7000
|
||||
,x,x,,0,19872.00.35,,,ETA30x16_203dpi.prn,,19872.00.35,105,,20,DELL'ORTO,,1000,000952054.ini,x,9000
|
||||
,x,x,,0,300146,,,000952054.prn,,300146,105,,40,POLYTECH,,1000,300146.ini,x,600
|
||||
,x,x,,0,670051071,,,000952054.prn,,670051071,105,,40,POLYTECH,,1000,670051071.ini,x,500
|
||||
,x,x,,0,670051072,,,000952054.prn,,670051072,105,,40,POLYTECH,,1000,670051072.ini,x,500
|
||||
,x,x,,0,670052452,,,000952054.prn,,670052452,105,,40,POLYTECH,,1000,670053220.ini,x,500
|
||||
,x,x,,0,670052453,,,000952054.prn,,670052453,105,,40,POLYTECH,,1000,670053220.ini,x,500
|
||||
,x,x,,0,670053220,,,000952054.prn,,670053220,105,,10,POLYTECH,,1000,670053220.ini,x,500
|
||||
,x,x,,0,670054129,,,000952054.prn,,670054129,105,,40,POLYTECH,,1000,670054129.ini,x,500
|
||||
,x,x,,0,670054130,,,000952054.prn,,670054130,105,,40,POLYTECH,,1000,670054130.ini,x,500
|
||||
,x,x,,0,670054131,,,000952054.prn,,670054131,105,,40,POLYTECH,,1000,670054130.ini,x,500
|
||||
,x,x,,0,670054812,,,000952054.prn,,670054812,105,,40,POLYTECH,,1000,670054812.ini,x,500
|
||||
|
|
|
@ -18,7 +18,7 @@ digital_io: present
|
|||
barcode_recipe_selection: present
|
||||
fixture_id: absent
|
||||
discard_box: absent
|
||||
# enforce_piece_removal: yes
|
||||
enforce_piece_removal: yes
|
||||
|
||||
[tecna_t3]
|
||||
port: COM4
|
||||
|
|
|
|||
10
config/vision/labels/670052452.pbtxt
Normal file
10
config/vision/labels/670052452.pbtxt
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
item {
|
||||
id: 1
|
||||
name: 'ok'
|
||||
color: '0x55AA55'
|
||||
}
|
||||
item {
|
||||
id: 2
|
||||
name: 'ko'
|
||||
color: '0xff0000'
|
||||
}
|
||||
10
config/vision/labels/670052453.pbtxt
Normal file
10
config/vision/labels/670052453.pbtxt
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
item {
|
||||
id: 1
|
||||
name: 'ok'
|
||||
color: '0x55AA55'
|
||||
}
|
||||
item {
|
||||
id: 2
|
||||
name: 'ko'
|
||||
color: '0xff0000'
|
||||
}
|
||||
20
config/vision/recipes/670052452.ini
Normal file
20
config/vision/recipes/670052452.ini
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
# O-RING PRESENCE DETECTOR
|
||||
# FOR FERRARI 000952054
|
||||
|
||||
[general]
|
||||
name: POLYTHEC
|
||||
instruction: CONTROLLARE PRESENZA PUNTO VERDE
|
||||
neural_network: none
|
||||
type: smart_camera
|
||||
camera_type: hikrobot_sc
|
||||
num_cameras: 1
|
||||
rotations=0
|
||||
solution_name=test_presence
|
||||
|
||||
[markers]
|
||||
|
||||
[zones]
|
||||
p1: 620,630 600,600 ok
|
||||
|
||||
[labels]
|
||||
|
||||
BIN
config/vision/recipes/670052452.scsln
Normal file
BIN
config/vision/recipes/670052452.scsln
Normal file
Binary file not shown.
20
config/vision/recipes/670052453.ini
Normal file
20
config/vision/recipes/670052453.ini
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
# O-RING PRESENCE DETECTOR
|
||||
# FOR FERRARI 000952054
|
||||
|
||||
[general]
|
||||
name: POLYTHEC
|
||||
instruction: CONTROLLARE PRESENZA PUNTO VERDE
|
||||
neural_network: none
|
||||
type: smart_camera
|
||||
camera_type: hikrobot_sc
|
||||
num_cameras: 1
|
||||
rotations=0
|
||||
solution_name=test_presence
|
||||
|
||||
[markers]
|
||||
|
||||
[zones]
|
||||
p1: 620,630 600,600 ok
|
||||
|
||||
[labels]
|
||||
|
||||
BIN
config/vision/recipes/670052453.scsln
Normal file
BIN
config/vision/recipes/670052453.scsln
Normal file
Binary file not shown.
Loading…
Reference in New Issue
Block a user