Სარჩევი:

KiCad მიკროსქემის სიმულაცია: 7 ნაბიჯი
KiCad მიკროსქემის სიმულაცია: 7 ნაბიჯი

ვიდეო: KiCad მიკროსქემის სიმულაცია: 7 ნაბიჯი

ვიდეო: KiCad მიკროსქემის სიმულაცია: 7 ნაბიჯი
ვიდეო: Design your own Circuit Boards using Kicad Part 1 (FREE software) 2024, ნოემბერი
Anonim
KiCad მიკროსქემის სიმულაცია
KiCad მიკროსქემის სიმულაცია

სქემების დახატვა და დიზაინი ძველი პროცესია, ისეთივე ძველი, როგორც პირველი ელექტრონული კომპონენტები. მაშინ ადვილი იყო. იყო შეზღუდული რაოდენობის კომპონენტი და შესაბამისად შეზღუდული რაოდენობის კონფიგურაცია, სხვა სიტყვებით რომ ვთქვათ: სქემები უფრო მარტივი იყო. ახლა, ეგრეთ წოდებულ საინფორმაციო ეპოქაში, არსებობს უამრავი კომპონენტი, რომელთაგან ბევრია და თითოეულ ელექტრონულ კომპონენტს აქვს ათზე მეტი მოდელი და თითოეული მოდელი დამზადებულია რამოდენიმე კომპანიის მიერ. ზედმეტია იმის თქმა, რომ თითოეული მოდელი და თითოეული კომპანიის კონკრეტული კომპონენტი განსხვავდება ერთმანეთისგან. მათ შეიძლება ჰქონდეთ მიკერძოებულობა, შეცდომები განსხვავებული ტოლერანტობით, განსხვავებული მაქსიმალური და მინიმალური მუშაობის პირობებით და, რა თქმა უნდა, შეიძლება ოდნავ შეცვალონ სქემის რეაქცია და მუშაობა. ყოველივე ამის დასასრულებლად, სქემები დღეს ძალიან რთულია; შედგება ათეულობით კომპონენტისგან, რომლებიც ერთმანეთთან ურთიერთობენ და შეასრულებენ სხვადასხვა დავალებებს შეყვანის საფუძველზე.

როგორც თქვენ სწორად მიხვდით, კოშმარი იქნებოდა ამ სქემების გაანალიზება გაანგარიშებით ან ხელით. გარდა ამისა, ზოგიერთი ტოლერანტობა და ნიუანსი დაიკარგება ან შეიცვლება, რადგან ისინი სპეციფიკურია პროდუქტისთვის. ეს არის ადგილი, სადაც ხდება სიმულაცია. თანამედროვე ტექნოლოგიების სიმძლავრის და უახლესი სიჩქარის გამოყენებით, წრიული ანალიზი, რომელსაც ადამიანების გუნდები მიიღებდნენ საათობით, ახლა ისეთივე მარტივია, როგორც

მარაგები

-Icad ვერსია 5.0 ან უფრო გვიან

-ინტერნეტი ბიბლიოთეკების ჩამოსატვირთად

ნაბიჯი 1: როგორ ხდება მაგია?

მოდით ეს წინასიტყვაობით ვთქვათ, რომ KiCad არ მართავს სიმულაციებს. KiCad არის მხოლოდ ინტერფეისი (მომხმარებლის ინტერფეისი). შესადარებელი ანალოგია იქნება ის, რომ KiCad არის მხოლოდ შუამავალი თქვენსა და სიმულაციურ პროგრამას შორის, რომელიც შეიძლება იყოს ერთ – ერთი მრავალრიცხოვანი პროგრამული უზრუნველყოფა სახელწოდებით „SPICE“.

SPICE შემოკლებით ნიშნავს "სიმულაციური პროგრამა ინტეგრირებული მიკროსქემის ხაზგასმით". KiCad– ის შემთხვევაში, KiCad 5.0 და მოგვიანებით მოდის წინასწარ შეფუთული SPICE პროგრამით, სახელწოდებით ngspice. Ngspice– ს აქვს თავისი უკუჩვენებები, ჩხუბები და შეზღუდვები, მაგრამ იქნება ის პროგრამული უზრუნველყოფა, რომელზეც ჩვენ ყურადღებას გავამახვილებთ. Ngspice იყენებს "კომპონენტებს" სქემის ქცევის მოდელირებისთვის. ეს ნიშნავს, რომ გარდა სქემის სქემებისა, ჩვენ ასევე უნდა დავნიშნოთ და „მივანიჭოთ“მოდელები ცალკეულ კომპონენტებს. ერთიდაიგივე კომპონენტის მრავალი მოდელის პრობლემის გადასაჭრელად, ngspice- მ გადაწყვიტა, რომ თითოეულმა კომპანიამ შექმნას "სანელებლების მოდელები", რომლებიც იმეორებს მათი რეალური კოლეგების თვისებებს და ნიუანსებს, შემდეგ კი შეფუთავს ამ მოდელებს, როგორც გადმოსაწერი ბიბლიოთეკები, ისე იქნებოდა ისეთივე მარტივი, როგორც საჭირო ბიბლიოთეკების გადმოტვირთვა და მოდელის მინიჭება ჩვენს კომპონენტებზე. მაგრამ ეს ყველაფერი ლაპარაკია, მოდით, ხელი ავიღოთ და ვნახოთ, როგორ მუშაობს ეს სინამდვილეში.

ნაბიჯი 2: სქემის არჩევა და პასიური კომპონენტების მოდელირება

სქემის არჩევა და პასიური კომპონენტების მოდელირება
სქემის არჩევა და პასიური კომპონენტების მოდელირება

ჩვენ ავირჩიეთ მარტივი წრე, რომელიც საშუალებას გვაძლევს ვაჩვენოთ, თუ როგორ შეგვიძლია მივაწოდოთ ჩვენი SPICE მნიშვნელობები კომპონენტებს და როგორ გამოვიყენოთ კომპონენტები, რომლებიც ჩამოთვლილია მოვაჭრეების მიერ

პირველ რიგში, როგორც ფიგურიდან ვხედავთ; ამ წრეში არის 8 კომპონენტი. • 2 რეზისტორი

• 1 9 ვ ბატარეა

• 1 LDR

• 1 ძვ. წ. 547 npn ტრანზისტორი

• 1 LED

• 1 რეოსტატი •

1 ადგილზე

ყველა სახის Ngspice რეზისტორების მოდელირება "ანიჭებს მოდელებს" წინააღმდეგობებს, სხვა სიტყვებით რომ ვთქვათ: ის აღიარებს მათ. ასე რომ, ჩვენ არ გვჭირდება მათი შეცვლა, ან ბიბლიოთეკების მორევა მათ შესაქმნელად. ჩვენ ასევე ვამჩნევთ, რომ არსებობს რეოსტატი და LDR. Ngspice– ში, ორივე შეიძლება მოდელირებული იყოს როგორც მუდმივი რეზისტორები, რომ ჩვენ შევცვალოთ მათი მნიშვნელობები, როგორც ჩვენ გვჭირდება. სხვა სიტყვებით რომ ვთქვათ, თუ ჩვენ გვჭირდება "შუქის გაზრდა" ან რეოსტატის დატვირთვის გაზრდა, ჩვენ მოგვიწევს სიმულაციის შეჩერება, დატვირთვის შეცვლა და შემდეგ მისი გამეორება.

ნაბიჯი 3: ძაბვის წყაროების და საფუძვლების მოდელირება

ძაბვის წყაროების და საფუძვლების მოდელირება
ძაბვის წყაროების და საფუძვლების მოდელირება
ძაბვის წყაროების და საფუძვლების მოდელირება
ძაბვის წყაროების და საფუძვლების მოდელირება
ძაბვის წყაროების და საფუძვლების მოდელირება
ძაბვის წყაროების და საფუძვლების მოდელირება
ძაბვის წყაროების და საფუძვლების მოდელირება
ძაბვის წყაროების და საფუძვლების მოდელირება

Ngspice არ ცნობს "სტანდარტულ" ძაბვის წყაროებს; რომლებიც გამოიყენება KiCad– ის მიერ. ის უზრუნველყოფს ბიბლიოთეკას სპეციალურად ძაბვის წყაროებისა და საფუძვლებისთვის

ბიბლიოთეკაში შესასვლელად, პირველ რიგში, ჩვენ უნდა ავირჩიოთ ჩანართი "აირჩიეთ სიმბოლო" და მოძებნოთ "სანელებელი"

*როგორც ჩანს (სურათი 1), ჩვენ გვაქვს "pspice" ბიბლიოთეკა და "simulation_spice". ძაბვის წყაროებისათვის, ჩვენ გვსურს გადავიდეთ ქვემოთ simulation_spice ბიბლიოთეკაში და შევარჩიოთ DC ძაბვის წყარო

ამის შემდეგ, ჩვენ უნდა დავაყენოთ მისი მნიშვნელობები სიმულატორის გასაგებად, ამ წრეში ჩვენ გვინდა 9v DC წყარო. ჩვენ ვწკაპუნებთ "E" - ზე ძაბვის წყაროზე და იხსნება შემდეგი მენიუ, ნაჩვენები (სურათი 2). ჩვენ ვირჩევთ ძაბვის წყაროს საცნობარო სახელს, მაგალითად VoltageMain და შემდეგ ვაწკაპუნებთ "Spice Model- ის რედაქტირებაზე". როგორც ნაჩვენებია ზემოთ

შემდეგ ჩვენ ვირჩევთ dc 9v მნიშვნელობას და ეს არის ამის შესახებ. როგორც ნაჩვენებია (სურათი 3)

გრუნტი

გრუნტისთვის ჩვენ კვლავ ვეძებთ "სანელებელს" და პირველი შედეგი არის 0V საცნობარო პოტენციალი, როგორც ეს ნაჩვენებია. (სურათი 4). ნორმალური სქემისგან განსხვავებით, Spice პროგრამულ უზრუნველყოფას სჭირდება მიწა, რადგან ის ითვლის ძაბვებს 0v მითითების საფუძველზე.

ნაბიჯი 4: ტრანზისტორის მოდელირება

მოდელირება ტრანზისტორი
მოდელირება ტრანზისტორი
მოდელირება ტრანზისტორი
მოდელირება ტრანზისტორი
მოდელირება ტრანზისტორი
მოდელირება ტრანზისტორი
მოდელირება ტრანზისტორი
მოდელირება ტრანზისტორი

როგორც ვხედავთ მიკროსქემის სურათიდან, გამოყენებული ტრანზისტორი არის ძალიან კონკრეტული მოდელი, "BC547". როგორც წესი, თითქმის ყველა წარმოებული კომპონენტი მოიძებნება მათი შესაბამისი მწარმოებლის ვებგვერდზე. მათი ინსტრუმენტის ან დამხმარე ჩანართის ქვეშ იქნება "სიმულაციური მოდელები", რომელშიც მოცემულია მოდელის ნომერი და ნათესავის სანელებლების მოდელი. ჩვენს შემთხვევაში მე ვეძებე "bc547" ინტერნეტით და აღმოვაჩინე, რომ ის დამზადებულია კომპანიის მიერ სახელწოდებით "ნახევარგამტარების შესახებ". მე ვეძებდი მათ ვებსაიტს "https://www.onsemi.com/" და ვიპოვე მოდელი შემდეგნაირად:

  • მე გავხსენი მათი ჩანართი "ინსტრუმენტები და მხარდაჭერა", ქვემოთ მე ვიპოვე დიზაინის რესურსების ჩანართი. (ფიგურა 1)
  • დიზაინის რესურსების ქვეშ მათ მოითხოვეს დოკუმენტის ტიპი, მე ავირჩიე "სიმულაციური მოდელები" (სურათი 2)
  • მე ვეძებდი ნაწილს სახელწოდებით: "BC547". ჩვენ გვსურს ბიბლიოთეკა, ამიტომ ვირჩევთ "BC547 Lib Model" და გადმოვტვირთავთ მას. (სურათი 3)
  • გადმოტვირთვის შემდეგ, lib ფაილი ჩავდე ჩემი პროექტის დირექტორიაში. ახლა ჩემი პროექტის დირექტორია ნაჩვენებია ჩემს მიერ გახსნილ KiCad ფანჯარაში, როგორც ეს ჩანს (სურათი 4). დავაწკაპუნე ჩემს გზაზე, გადავიტანე ბიბლიოთეკის ფაილი, როგორც ეს ნაჩვენებია და დავბრუნდი, რათა ვიპოვო ჩემი პროექტის ფაილებთან ერთად
  • მას შემდეგ რაც ყველაფერი ითქვა და გაკეთდა, მოდით დავხატოთ ტრანზისტორის სიმბოლო. მე დავაწკაპუნე "ადგილის სიმბოლოს" მენიუს გამოყენებით და უბრალოდ ვეძებე სახელი. თქვენ აღმოაჩენთ, რომ თითქმის ყველა კომპონენტი არსებობს სიმბოლოების მენიუში, როგორც ეს არის (სურათი 5).
  • ახლა, რაც რჩება არის სიმბოლოს მოდელის მინიჭება. ჩვენ ვაწკაპუნებთ "E" - ზე, როგორც ყოველთვის სიმბოლოზე და ვაწკაპუნებთ "Spider model model" - ის რედაქტირებაზე.
  • როგორც ვხედავთ, მხოლოდ ხელმისაწვდომი ჩანართებია მოდელი, პასიური და წყარო. ვინაიდან ტრანზისტორები არც წყაროა და არც პასიური, ჩვენ ვირჩევთ მოდელს და ვირჩევთ ბიბლიოთეკის დანამატს შესავსებად. მენიუ პირველად იხსნება პროექტის დირექტორიაში, რომელიც გაგვიმართლა, რომ ბიბლიოთეკა უკვე ჩავსვით მასში. ჩვენ დააჭირეთ Lib ფაილს.

    • დიდი !! ახლა ngspice- მა დაასახელა ტრანზისტორი როგორც "BC547" და თითქმის მზადაა ოპერაციისთვის. ჯერ ერთი პატარა დეტალია დასალაგებელი. ჩვენ უნდა გავააქტიუროთ კვანძის ალტერნატიული თანმიმდევრობა და დავწეროთ "3 2 1". მიზეზი, რის გამოც ჩვენ უნდა გავაკეთოთ ეს ნაბიჯი არის ის, რომ ngspice ასახელებს 3 ტრანზისტორი ტერმინალს ისე საპირისპიროდ, როგორც KiCad აჩვენებს მათ. ამრიგად, მას შეიძლება მიენიჭოს 3 კოლექციონერზე, ხოლო KiCad გვიჩვენებს 3 როგორც გამომცემელს. დაბნეულობის თავიდან ასაცილებლად, ჩვენ ხელახლა ვაკონფიგურირებთ Spice– ის დასახელების წესრიგს, როგორც ეს ნაჩვენებია (სურათი 7)
    • და ეს არის ის! ეს პროცესი თითქმის იდენტურია allvendor- მარაგების მოდელებისთვის. მას შემდეგ რაც თავი დაახურეთ ამ სამეურვეო ნაწილზე, შეგიძლიათ გამოიყენოთ ნებისმიერი ტიპის ელექტრონული მოდელი და კომპონენტი მხოლოდ მცირე კვლევით.

ნაბიჯი 5: LED- ების მოდელირება

LED- ების მოდელირება
LED- ების მოდელირება
LED- ების მოდელირება
LED- ების მოდელირება

LED- ები ცოტა უფრო რთულია იმაში, რომ მათი მოდელირება მოითხოვს გარკვეულ ცოდნას მათი პარამეტრების და მოსახვევის შესაფერისად. ასე რომ, მათი მოდელირებისთვის მე მხოლოდ "LED ngspice" ვიხედე. ვიპოვე მრავალი ადამიანი, ვინც აქვეყნებდა მათ "LED მოდელებს" და გადავწყვიტე ამ " *ტიპი RED GaAs LED: Vf = 1.7V Vr = 4V If = 40mA trr = 3uS. მოდელი LED1 D (IS = 93.2P RS = 42M N = 3.73 BV = 4 IBV = 10U + CJO = 2.97P VJ =.75 M =.333 TT = 4.32U)?"

ჩვენ ვირჩევთ "LED" სიმბოლოების მენიუდან და ჩასვით ეს კოდი ცარიელ სივრცეში ბიბლიოთეკების ქვემოთ "Spice model model". ჩვენ ასევე ვაპირებთ ჩართოთ კვანძების ალტერნატიული თანმიმდევრობა და დავწეროთ "2 1", როგორც ეს მოცემულია ფიგურაში 1

რამოდენიმე საბოლოო შეხების შემდეგ, რეზისტორების მსგავსად და მავთულის შეერთების შემდეგ, ჩვენ მზად ვართ დავიწყოთ სიმულაცია

ნაბიჯი 6: სიმულაცია

სიმულაცია
სიმულაცია
სიმულაცია
სიმულაცია
სიმულაცია
სიმულაცია
სიმულაცია
სიმულაცია

სიმულაცია რთულია, ამიტომ ამ გაკვეთილში ჩვენ აგიხსნით საფუძვლებს და როგორ შეგიძლიათ დაიწყოთ

  • პირველი, ჩვენ ვხსნით სიმულატორს ინსტრუმენტების ჩანართიდან ზედა ლენტში (სურათი 1)
  • შემდეგ ჩვენ მივდივართ სიმულაციის ჩანართზე ზედა ლენტში და ვაწკაპუნებთ პარამეტრებზე, იქიდან შეგვიძლია განვსაზღვროთ, თუ რა სახის სიმულაცია გვსურს და მისი პარამეტრები. (სურათი 2)

ჩვენ გვინდა გავატაროთ გარდამავალი სიმულაცია. ასევე არსებობს DC და AC გაწმენდა სიმულაციის ვარიანტების სახით. Dc Sweep ზრდის Dc დენის მნიშვნელობას და აცნობებს წრეებში ცვლილებებს, ხოლო AC აკონტროლებს სიხშირის პასუხს.

  • თუმცა, გარდამავალი ანალიზი ახდენს სქემის სიმულაციას რეალურ დროში. მას აქვს 3 პარამეტრი, რომელთაგან ჩვენ ვაპირებთ გამოვიყენოთ ორი. დროის ნაბიჯი არის ის, თუ რამდენად ხშირად ჩაიწერება სიმულატორი შედეგებს, ხოლო საბოლოო დრო რამდენი წამის შემდეგ შეწყდება ჩაწერა. ჩვენ შევიყვანთ 1 მილიწამს და 5 მილიწამს და შემდეგ კარგი, შემდეგ კი ვაწარმოებთ სიმულაციას (სურათი 3)
  • როგორც ხედავთ, ქვედა ტექსტის ჩვენება გვიჩვენებს ძაბვის და მიმდინარე მნიშვნელობებს სხვადასხვა კომპონენტზე. ჩვენ ასევე შეგვიძლია ამ მნიშვნელობების გრაფიკულად გამოყენება "სიგნალების დამატება" ღილაკით და შემდეგ გარკვეული კომპონენტის ძაბვის ან დენის არჩევით. ჩვენ ასევე შეგვიძლია გამოვიკვლიოთ სიმულაციის დაწყების შემდეგ. გამოძიება საშუალებას გვაძლევს დავაკვირდეთ ძაბვისა და დენის მოსახვევებს გარკვეულ კომპონენტში პირდაპირ მასზე დაჭერით. (სურათი 4)

ნაბიჯი 7: შეფუთვა

ვინაიდან ვარაუდობენ, რომ ეს წრე დამზადებულია LDR და რეზისტორით, ჩვენ შეგვიძლია შევცვალოთ ორივე კომპონენტის წინააღმდეგობა და შემდეგ გადავაბრუნოთ წრე, რათა განვსაზღვროთ წინააღმდეგობის მნიშვნელობები, რაც ჩვენ გვსურს ამ სინათლის კონტროლირებადი LED- სთვის საერთო emitter npn ტრანზისტორით როგორც გადართვის წრე.

გირჩევთ: