Son İletiler

#1
E
Temel Elektrik/Elektronik / Ynt: Batarya şarjı Ters bağlan...
Son İleti Gönderen Epsilon - Bugün, 02:47:53
Tp4056 da ters bağlantı koruması var diye biliyorum.
Test etmek için 4 voltluk  aküler de denenebilir.
#2
Resimdeki tür indüktörlerin çalıştığı bir devrenin 5mm yakınına bir sebebten dolayı 5mm çaplı neodymium mıknatıs koymak zorunda kaldım.
Bu durumun indüktörlere ve dolayısıyla devreye etkisi ne olur?


#3
tp4056 devresine cep telefonu şarj cihazı bağlayarak lion 4.2 volt bir bataryayı şarj etmek istiyorum. Fakat bataryanin ters bağlanabilme olasılığı var.
Bu durumda artı hattına bir diyot koyup ters bağlantı koruması yapmayı düşündüm. Fakat diyot ile çıkışta 0.7 volt gibi bir gerilim düşümü olacak. Bunun şarja etkisi ne olur. Başka bir öneriniz var mı?

#4
M
Microchip PIC / Ynt: delaysız pic kodu
Son İleti Gönderen mr.engineer - Dün, 22:05:09
Alıntı yapılan: Tagli - Dün, 20:51:16Aynı fikirdeyim. RTOS kullanmanın artıları ve eksileri var. Ama genel görüşüm preemption şart değilse - ki genelde şart olmuyor - RTOS'a pek de gerek kalmadığı yönünde. State machine'ler bir event dağıtım mekanizması ile birleştiğinde çok güçlü oluyorlar. Artık tüm uygulamalarımı bu yapıyla tasarlıyorum.

Duraksamalar bazen yazılım akışında gerekli olabiliyor. Burada önemli olan, bu tür bir duraksama sırasında işlemcinin başka işler de yapabiliyor olmasıdır. Duraklama da state machine içinde bir durumdur aslında. Süresi dolan bir timer, kesme mekanizmasını kullanarak, bekleme durumundaki bir bileşene bir event atar ve bekleme durumu sona erer, sonrasında sırada ne varsa o yapılır. Ana mantık bu.

Zaman içinde projelerimin alt yapısında kullanmak üzere bir çeşit framework oluşturdum ve bunu da C++ ile yazdım. Haliyle, çok zorlayıcı bir neden olmadığı sürece C++ derleyicisi olmayan bir işlemciye geri dönmek istemiyorum. Zamanında ben de elektroniğe ve gömülü yazılıma PIC16F84A ile başlamıştım ve sanırım 2017 yılına kadar da sadece PIC (8 ve 16 bit) kullandım. Ama günümüzde PIC'ler ile aynı fiyata, hatta çok daha ucuza çok daha yetenekli Cortex M0 işlemciler bulunabilirken PIC kullanmak için bir sebep kalmadı benim bakış açıma göre.


dsPIC'ler için görüşünüz nedir?
#5
avatar_Tagli
Microchip PIC / Ynt: delaysız pic kodu
Son İleti Gönderen Tagli - Dün, 20:51:16
Alıntı yapılan: Mucit23 - Dün, 18:34:54RTOS olmasa da öğrenmeniz gereken en temel şey State Machine Yapısı

Aynı fikirdeyim. RTOS kullanmanın artıları ve eksileri var. Ama genel görüşüm preemption şart değilse - ki genelde şart olmuyor - RTOS'a pek de gerek kalmadığı yönünde. State machine'ler bir event dağıtım mekanizması ile birleştiğinde çok güçlü oluyorlar. Artık tüm uygulamalarımı bu yapıyla tasarlıyorum.

Duraksamalar bazen yazılım akışında gerekli olabiliyor. Burada önemli olan, bu tür bir duraksama sırasında işlemcinin başka işler de yapabiliyor olmasıdır. Duraklama da state machine içinde bir durumdur aslında. Süresi dolan bir timer, kesme mekanizmasını kullanarak, bekleme durumundaki bir bileşene bir event atar ve bekleme durumu sona erer, sonrasında sırada ne varsa o yapılır. Ana mantık bu.

Zaman içinde projelerimin alt yapısında kullanmak üzere bir çeşit framework oluşturdum ve bunu da C++ ile yazdım. Haliyle, çok zorlayıcı bir neden olmadığı sürece C++ derleyicisi olmayan bir işlemciye geri dönmek istemiyorum. Zamanında ben de elektroniğe ve gömülü yazılıma PIC16F84A ile başlamıştım ve sanırım 2017 yılına kadar da sadece PIC (8 ve 16 bit) kullandım. Ama günümüzde PIC'ler ile aynı fiyata, hatta çok daha ucuza çok daha yetenekli Cortex M0 işlemciler bulunabilirken PIC kullanmak için bir sebep kalmadı benim bakış açıma göre.
#6
avatar_Mucit23
Microchip PIC / Ynt: delaysız pic kodu
Son İleti Gönderen Mucit23 - Dün, 18:34:54
RTOS olmasa da öğrenmeniz gereken en temel şey State Machine Yapısı.

En basitinden bir Timer kurup Timer Eventi ile main içerisinde durum değişkenleri ile işlem yapabilmelisiniz. Bu sayede program delaylara takılmaksızın yazdığınız döngüdeki işlemleri yerine getirir.
#7
E
Microchip PIC / Ynt: delaysız pic kodu
Son İleti Gönderen Epsilon - Dün, 17:15:14
8 bit MCU ilk defa 1972 de kullanılmış.
Voyager I de bile kullanılmamış olabilir.Ama bu araç  -270 derece ortamda ,saatde 61500 km lik hızla uzaklaşmasına  ve çok yüksek manyetik Radyoaktif ortamlardan geçmesine rağmen kırk iki yıldır  hala çalışıyor.Şu anda yaklaşık 24,3 milyar km uzakta
Önemli olan tasarımın mükemmel olması.Pekçok şeyin düşünülmesi ve önlem alınması.

Ha parçacık hızlandırıcısında bilmem kaç nano saniyelik olayın bilgisini alman gerekiyor o zaman 128 bit MCU kullan  :) 
(128 bitlik MCU yok sanırım)
MCU yazılımı konusunda çok bilgili değilim ama zaten donanımlarda bu delay(Bekleme ) komutları özellikle isteniyor diye biliyorum.
(Displaylerin kendine gelmesi için bekleme süresi vs)
Fotoğralar:
Voyagerın "Elektronik Beyni"
Voyager ın  Ucuş alt  sistem bilgisayarı(Altta)

voyager-n-beyni" border="0
voyager-ucu-bilsisayar-s-stemi" border="0
#8
U
Microchip PIC / Ynt: delaysız pic kodu
Son İleti Gönderen uzaylivolkan - Dün, 17:09:22
Arduino da milis() functionu ile yaptığın işlemleri pic serisi işlemcilerle de yapabilirsin. Timer interrupt konularına bakman gerekir. Linkini verdiğim sitede ccs dili ile yazilmiş timer interrupt örneği var.
timer interrupt örneği
// PIC16F877A Timer2 interrupt
// Timer2 is used to interrupt every 49.93ms
http://simple-circuit.com/

#include <16F877A.h>
#use delay(crystal=4000000)

byte i;
#INT_TIMER2
void timer2_isr(void)
{
   clear_interrupt(INT_TIMER2);
   i++;
   if(i > 9)
   {
   i = 0;
   output_toggle(PIN_B0);
   }
}
void main()
{
   setup_timer_2 (T2_DIV_BY_16, 0xF0, 13 );  // Timer2 prescaler 16, Preload value 0xF0 and postoscaler 13
   clear_interrupt(INT_TIMER2);              // Clear Timer2 interrupt flag bit
   enable_interrupts(INT_TIMER2);            // Enable Timer2 interrupt
   enable_interrupts(GLOBAL);                // Enable global interrupts
   output_low(PIN_B0);

   while(TRUE) ;                             // Endless loop
}
#9
avatar_Mr.Thinking
Microchip PIC / Ynt: delaysız pic kodu
Son İleti Gönderen Mr.Thinking - Dün, 16:42:44
Pic i ve 8 biti kötülediklerinde şahsıma hakaret edilmiş gibi sinirleniyor ve üzülüyorum.
Tamam gelişime açığım ama, bir-iki adc okuyup birkaç röle çektirmek içinde Cortex m0 mu kullanalım yani.
https://koddefteri.net/ccs-c/ccs-c-donguler.html
#10
Alıntı yapılan: istinaf duvarı - Dün, 11:58:20İlk kalkışta sorun yaratan şey rotorun tüm kutuplarının kör noktalarda durmasıdır. Bu durumda rotor itilemeyeceği ya da cekilemeyeceği için olduğu yerde titrer.

Rotor ve stator kutup sayıları tüm kutupların aynı anda kör noktada olmayacağı şekilde ayarlanır.

Bunun en basit ve ideal yolu rotor ve statordan birinde tek sayıda kutup varsa diğerinde çift sayıda kutup olmasıdır.
3-2,5-2,9-4 gibi. Bir de kutup sayıları aralarında asal ise tüm kutupların kör noktaya denk gelme ihtimali sıfırdır. Bu nedenle ilk kalkışta tüm kutuplardan itme olduğu için kalkış torku yüksek olur.

Rotor ve statorda farklı adetlerde ama çift sayıda kutup olursa her zaman kör noktaya denk gelen kutuplar olacaktır. Bu da kalkış anında kör noktada ki kutuplarda itme olmayacağından kalkış torkunu azaltacaktır.
bu dediklerin fırçalı motorda geçerli olabilir ama BLDC de bire bir kutup olmak zorunda diye düşünüyorum.
Karasız bir durum da hiç bir zaman olmaz.
Zira her kutbun karşısına bir sabit kutup gelirki bir pozitif bir negatif puls verdiğinizde Hal efect konumunun nereye denk geldiği anlaşılır ve sonrasında yön seçilir.