コード例 #1
0
ファイル: ICalc.py プロジェクト: zaqwes8811/matlab_ext
def calcCoeffTransf(I):
	# Исходная зашумленная зависимость
	#multer = Splitter	# с делителя на АЦП
	multer = 1	# если напрямую с датчик Холла
	U = I * Kiu + dU
	co.printW( 'Udac : ' + str( U )+'\n')
	Udig_f = toDigitalFull( U, multer, toDigital )
	Udig = int( Udig_f )
	
	# Рассчитываем шум - смещение по Y
	Udig_noise_f = toDigitalFull( dU, multer, toDigital )
	
	# Очищенное значение - без шума
	Udig_corr = int(Udig_f - Udig_noise_f)	# суммируются перед оцифровкой

	# коэффициент перевода. Это чистое значение тока - для рассчетов и отображения
	# Warning : немного расходится с прошитым, но прошитый откалиброван, поэтому 
	#   наверное пусть как есть
	Ktrans = I/Udig_corr  # A/ue
	
	# переводим в плавающую точку
	print 'capacity : ' + str( capacity )
	co.printN( 'Udig_src, ue : ' )
	co.printE( tc.byte4strhex( Udig )+'\n')
	print 'Udig_cor, ue :  ' + tc.byte4strhex( Udig_corr )
コード例 #2
0
	def testCurrADCZeroXZ0( self ):
		# Constants and coeff.
		R1 = 5.11
		R2 = 10.0
		Splitter = R2/(R1+R2)

		Vmax = 5000.0 	#mV
		capacity = 10

		Kiu = 188.0		# mV/A
		dI = 0.0	# A
		I = 10	# A
		
		# проверяем
		self._valueDict[ 'value' ] = I
		self._valueDict['displacement'] = dI
		self._valueDict['converter' ] = Kiu
		self._valueDict['scale'] = Splitter
		self._valueDict['capacity'] = capacity
		self._valueDict['Vmax'] = Vmax 
		
		code, Kda = adda.modelADC( self._valueDict, printRpt, adda.calcZeroDisplacmentX )
		
		# Проверка кода числ
		self.assertEqual( tc.byte4strhex( code ), '0x00FE' )