from machine import Pin, I2C
from hx711 import HX711
from ssd1306 import SSD1306_I2C
from onewire import OneWire
from ds18x20 import DS18X20
from time import sleep, sleep_ms
from motor_control import StepperMotor
from display import DisplayManager
from sensors import WeightSensor, TemperatureSensor
# Kalibrasyon değerleri (kendi sisteminize göre ayarlayın)
CALIBRATION_FACTOR = -7050
ZERO_OFFSET = 84236
def main():
# Bileşenleri başlat
display = DisplayManager()
weight_sensor = WeightSensor(CALIBRATION_FACTOR, ZERO_OFFSET)
temp_sensor = TemperatureSensor()
motor = StepperMotor([12, 13, 14, 15])
# Başlangıç ekranı
display.show_splash("AKILLI TERAZI")
sleep(2)
while True:
# Sensörlerden veri oku
weight = weight_sensor.read()
temp = temp_sensor.read()
# Ekrana yazdır
display.update(weight, temp)
# Ağırlığa göre besleme mekanizmasını kontrol et
if weight < 1.0: # 1 kg altında ise besle
motor.rotate(100, 1) # 100 adım saat yönünde
sleep(1)
sleep(0.5)
if __name__ == "__main__":
main()