Как преобразовать тип десятичной дроби () Python в INT и экспонента

Я хотел бы использовать тип данных Decimal () в python и преобразовать его в целое число и показатель степени, чтобы я мог отправить эти данные в микроконтроллер / plc с полной точностью и десятичным управлением.https://docs.python.org/2/library/decimal.html

У меня есть это, чтобы работать, но это хакерское; кто-нибудь знает лучший способ? Если нет, то по какому пути я бы сам написал функцию более низкого уровня as_int ()?

Пример кода:

from decimal import *
d=Decimal('3.14159')
t=d.as_tuple()
if t[0] == 0:
    sign=1
else:
    sign=-1

digits= t[1]
theExponent=t[2]
theInteger=sign * int(''.join(map(str,digits)))

theExponent
theInteger

Для тех, у кого нет запрограммированных ПЛК, моя альтернатива этому - использовать int и объявлять десятичную точку в обеих системах или использовать с плавающей запятой (которую поддерживают только некоторые ПЛК), и это с потерями. Таким образом, вы можете понять, почему это было бы здорово!

Заранее спасибо!