Veri sıkıştırma nasıl yapılıyor ?

Başlatan ÜC, 06 Ocak 2016, 14:51:54

ÜC

     2 sensörden aldığım değerleri 1 byte olarak eproma kaydetmek ve bunu sonradan tekrar ayırmak istiyorum.Örn 77 ve 8 değerini 1 byte olarak kaydedeceğim.Kaydedilen 1 byte veriden okuma yaparak tekrar 77 ve 8 değerini bulmalıyım. Bir nevi veri sıkıştırma gibi olacak. Bu olabilirmi ?

Burak B

Sadece 2 byte içinmi ? Bu gereksiz bir durum. Ama daha büyük miktarda veri için soruyorsan RLE (Run Length Encoding) algoritmasına bir bak en basitlerinden biri odur.
"... a healthy dose of paranoia leads to better systems." Jack Ganssle

ÜC

     Evet 2 byte için gerekli. Her 6 dakikada 1 sensör okuyor kaydediyorum. 24 saatte ortalama 240 kayıt yeterli oluyor.Kaydettiklerimi yaklaşık 24 saat civarında okuyacağım.Bu şekilde 1 sensör kullanıyorum ama 2. sensör için eprom yetmiyor. Daha büyük veya harici eprom ihtimalim şu an yok. Pratik çözüm olarak sıkıştırma olabilir sanıyorum.

kutahyaspor



yanılıyorsam lütfen düzeltin;
ilk 4 bit ve sonraki 4 bit olarak ikiye böldüğümüzü düşünelim. ilk parçayla işimiz bitince veriyi shift ile kaydırsak, iki adet 0-15 değeri arasında veri gönderebiliriz. şu halde sorunumuzu çözemiyoruz.

ÜC

0-15 arası yeterli gelmiyor , 0-45 olabilir , daha büyükleri gözardı edebilirim ama 2.sensör için 2 bit kalıyor.

engerex

Hassasiyet nedir? ve 2 sensörde aynı hassasiyette mi?
Arkadaşın bahsettiği gibi 1 baytı 4bit + 4 bit ayrısısın. Sensörden okunan değeri 3'e bölersin ve bunu kaydedersin.

Örnek
1. sensörden 45 okudun. 45/3 = 15 = 1010
2. sensörden 11 okudun. 11/3 = 3 =  0011 (yada 4'e yuvarlarsın)
"1010" + "0011" = "10100011"
Okurken de 3'le çarparsın.

ÜC

#6
11 / 3 = 3    kaydedilen
3 x 3 = 9     okunan
11-9=2        fark

3 ve üstleri sayıların 2 fazlasında 2 derece fak yapıyor ama bu şekilde olacak , hiç yoktan iyidir.

Teşekkürler ilgilenen , cevap yazan tüm arkadaşlara ve iyi çalışmalar..

rck8942

Bence her 6 dk verileri kaydetmenin anlamini ne ? Neden 6 dk olmak zorunda ? Biz her 15 dk da verilerin ortalamasini alip sql yaziyoruz Windows ta
Elektroniker für Betriebstechnik

ÜC

Kuluçka makinesinin bulunduğu oda sıcaklığının makinenin ısıtıcısının çalışma süresine olan etkisini araştırıyorum.Dış ve iç sıcaklıkları devamlı ölçeceğim.Makinanın yanına saat 10:00 civarlarında gidebiliyorum.Gittiğimde gün boyunca olan değişimleri görmem lazım. Yanımda pc götürüp kaydedilen verileri alacağım. 24 saatte kaç kontrol yapabilirim hesabında 6 dakikada bir 240 kortrol yapılıyor.

serdararikan

verileri haricieeproma kaydedebilirsin veya sd karta.

ÜC

Alıntı yapılan: serdararikan - 06 Ocak 2016, 22:21:58
verileri haricieeproma kaydedebilirsin veya sd karta.

Ankarada ikamet ediyorum ama şu an taşradayım , eprom yada daha büyük epromlu işlemci yok yanımda,eğer çözüm bulamasaydım eprom istemeyi düşünüyordum bende ama gerek kalmadı , sağolsun arkadaşlar.

kutahyaspor

Alıntı yapılan: umitco - 06 Ocak 2016, 22:07:02
Kuluçka makinesinin bulunduğu oda sıcaklığının makinenin ısıtıcısının çalışma süresine olan etkisini araştırıyorum.Dış ve iç sıcaklıkları devamlı ölçeceğim.Makinanın yanına saat 10:00 civarlarında gidebiliyorum.Gittiğimde gün boyunca olan değişimleri görmem lazım. Yanımda pc götürüp kaydedilen verileri alacağım. 24 saatte kaç kontrol yapabilirim hesabında 6 dakikada bir 240 kortrol yapılıyor.
nem ölçümü yapmıyor musunuz? :)

ÜC

#12
Yapacağım elbette ama önce ısı işini bitireyim daha sonra ona bakacağım.Nemin zorlayacağını düşünmüyorum , nem modülü ve SHT11 kullanıyorum.

t600

sloot dijital kodlama   , yapabilersen tabi

sadogan

Kullandığınız MC de ram durumu nedir? Full dolumu, boş alanlar varsa oraya da kayıt yapabilirsiniz.