# Beztēma >  kompja processora prgrammēšana uz Dos

## Epis

Es nezinu kā kompi var iepgrogrammēt (vislabāk pa taisno bez nekādiem DOS un Bios, bet ja tas nav iespējams tad Kautvai zem DOS, kādas zin kādas ir programmas (ar C, vai C++ valodām) ???

----------


## GuntisK

Sāksim ar to-kā Tu to domā: ieprogrammēt?

----------


## Mairis

Diez vai viņš tev vispār atļausies programmēties.

----------


## Vikings

Tu domā taisīt operētājsistēmu no nulles? Domā ir vērts, ja ir pieejams Linux un DOS, kuras var izmantot kā RTOS? Bet vispār - paņem kādu programmēšanas valodu, kas paredzēta kādai no augstākminētajām OS un no manuāļa mācies. Tajā pašā C izvade uz portu aizņem vienu rindiņu.
Starp citu, varbūt ir vērts mācīties Pascal, ja nu vēlāk būs interese pārveidot TurboCNC progu savām vajadzībām tad viņa kā reizi ir rakstīta Pascalā.

----------


## Epis

Nezinu kā tad vispār kompja proci var ierpogrammēt ??  jo cik saprotu iekšējās Flash atmiņam viņam laikam nav tātad laikam vaig kādu ārējo Flash atmiņu, vai cietni, a kā parasti notiek tas programmēšanas process ?? 

piemēram man ir pliks processors + mātesplate nedaduz RAM atmiņas un viena 512Mb flash atmiņa vai ar to pietiek lai varētu komis iet pēc flashā ierakstītās programmas ??

nevaig man nekādus tur RTos, un DOS gribās zināt kā pataisno viņu darbināt.

----------


## Vikings

Bet priekš kam tev gribas visu no nulles? Kur ir problēma balstīties uz iepriekš izstrādātām OS un rakstīt kodus uz gatavām programmēšanas vidēm? Tiešām gribi arī kompim visu ASMā bliezt iekšā?

----------


## Epis

> Bet priekš kam tev gribas visu no nulles? Kur ir problēma balstīties uz iepriekš izstrādātām OS un rakstīt kodus uz gatavām programmēšanas vidēm? Tiešām gribi arī kompim visu ASMā bliezt iekšā?


 da nē uzrakstīt kādu C kodu un tad nokompilēt un to kodu iegrūst kompī lai rēķina, es domāju kad tie visi RTOS un DOS ir domāti priekš vizualizēšanas , bet ja nav nepieciešama nekāda vizualizēšana tikai plika matemātika tad kāda jēga?

----------


## Vikings

Dos taču katrā ziņā nav priekš vizualizēšanas domāts. Manuprāt, tīrs DOS ir viena no plikākajām OS kādu vien var atrast. Redz, kur par brīvu var dabūt TurboPascal7. Un šeit var dabūt DOS bootdiskus, kuri nepieciešami lai tukšu kompi palaistu uz DOS.

----------


## Epis

apskatījos par to pascal valodu un man liekās ka tā valoda ir tāda kā novecojusi man vaig kautko uz C,C++ negribās mācītes jaunu valodu (lai gan viņas visas ir līdzīgas). 
kāds zin kādu smuku programmu ar normāliem instrumentiem, līdzīgiem visual studio 2005 tikai lai var rakstīt kodu priekš paša procesora un to progu flash atmiņā iegrūst  ::  ???

----------


## a_masiks

Vari jau programmēt kompi pa taisno pat apejot BIOSu, takš nāksies pašam definēt un rakstīt draiverus visām savām ierīcēm, operatīvo atmiņu ieskaitot. DOS kas sēž virū BIOSam dod iespēju izpildīt programmas kas nav piesaistītas pie konkrēta delža vektoriem, adresēm un konfigurācijas. 
Vizualizēt nepieciešams jebkurā gadījumā. Pat savu cepeškrāsni tu centies vizualizēt ar gaismas diodi un papildus ar laika-temperatūras grafikiem. Vizualizācija nepieciešama interfeisam ar cilvēku.
Lai būtu ieskats   - aparatūra, kas maksā ap 100'000 Euriku, no nopietnas firmas ir bāzēta uz aizvēsturiska pintiķa 300-400MHz un strādā ODSā. Bios gan modificēts priekš konkrētiem dzelžiem, bet opsistēma - DOS. Ar visu cieto disku, startupu un šutdovnu, kā mikrosoftam pienākas. Katra vadības poga izpilda kādu no apakšprogrammām. http://www2.rohde-schwarz.com/product/CMU200.html




> apskatījos par to pascal valodu un man liekās ka tā valoda ir tāda kā novecojusi man vaig kautko uz C,C++ negribās mācītes jaunu valodu (lai gan viņas visas ir līdzīgas).


 Pasaki - kuram te ir kāda daļa gar tavu negribēšanu? Došu padomu - negribi vēl vairāk! Iesaku negribēt palaist CNC, ciklonu un lodēšanas krāsni reizē! Rezultātus garantēju! Negribēšana izpildīsies!

----------


## Vikings

Cik nu novecojusi, Delphi tas pats Pascal vien ir tikai zem Windows. Es nezinu par "skaistajām" izstrādes vidēm, varbūt viņas atbalsta koda kompilēšanu priekš darba zem DOS, bet ja nē - nāksies iztikt ar DOSīgo izstrādes vidi.

----------


## Delfins

Tas saucās `boot from flash`..
Bet vienalga, tev būs jāraksta pilnvertīga OS. Vari saukt to par programmu, bet tā būs operētājsistēma, - sistēma, kas izpilda operācijas, jo CPU ir tikai CPU, kas procesē instrukcijas.

Atškirībā no PIC/AVR/etc čipiem, tev pašam tagad būs viss jākodē, - interfeiss starp RAM/ROM/CPU/citiem devaisiem (čipos tas jau ir iekšā, atliek tikai uzrakstīt instrukcijas un ieflešot + fiksēti HW sistēma).

Vispār, Epi, tu esi smagi nolaidis `savām akcijām` cenu... 
Un zinot to, kā tu mocies ar datu saņemšanu/nosūtīšanu, šitais ir `Mission Imposible`...

Kā risinājums var būt - pliks/minimālais linux kernelis ar termināli + savējais cepts kernel modulis/draiveris/proga

----------


## Epis

nu kā, ir kāda tā DOs programmas koda izstrādes vide kas iet normāli zem WindowsXp ?? un tad uztaisa to kodu ielādē flash atmiņā un palaiž uz otra kompja. 
nu jā izskatās ka tas bios un Dos ir laikam ka vajadzīgs.



> Vispār, Epi, tu esi smagi nolaidis `savām akcijām` cenu...


 Visi jau baigi stāsta ka kompi kodēt ir vieglāk nu tad jāiemēģina redzēs cik viegli tas ir !

----------


## Delfins

kam tev DOS?
Ņem linux, kompilēt var uz jebkuras mašīnas priekš jebkura čipa (GCC prot kompilēt arī AVR-iem), tik norādi parametros. tālāk tas jau būs bootojamais kernelis, uz kura vari palaist jebkuru programmu.

Takš paņem dokumentus, palasi.. google ir... infa ir.
Paskaties cik projektu uztaisīts uz `Embedded linux`

----------


## Epis

Nu nē es tajā linux ārprātā līst iekšā negribu esu jau tās linux lapas skatījies un pamācības tur vispār nevar atrast nekādu sākumu un galu, kautkādi kodu gabali kuri jāvieno, un nekāda pamata, kā sacīt jāsaka nav normālas IDE (integrated devopment envirometn) progas uz kuras to visu rakstīt. 
labāk taisu programmu uz Dos nekā linux.

----------


## Delfins

Tieši tāpēc uz linux ir vieglāk rakstīt system-level kodu. Open-source visu pats saliek pa plauktiņiem. Infas ir pārpilns. Pats galvenais ir iepazīt un saprast linux. Ja esi tam ticis cauri, tad viss priekšā izdosies.
Pamēģini atrast kaut ko izmirušam DOS-am/windows-am... stipri aplauzīsies.

Man personīgi ir tāds viedoklis, - ja cilvēks nespēj iepazīt linux, tad nekāds dižs IT/koders no viņa nesanāks.
Starp citu IDE ir tikai čaula... IDE izmanto to pašu kompilatoru, ko izmantotu bez IDE-s. Uz linux ir arī visi tie IDE-s.
Ja nemāki programmēt konsolē, nemācēsi labi kodēt arī IDĒ

PS: Šis topiks jau pašā sākumā bija domāts kā offtopiks  ::

----------


## nemos

> ... vislabāk pa taisno bez nekādiem DOS un Bios ... (ar C, vai C++ valodām) ???


 Nekad neesmu nopietni aizdomājies par to kā atdzīvināt proci no pirmās instrukcijas. Parasti to veic ražotāja veidots BIOS, bez biosa nelādēsies ne DOS ne LINUX ne kas cits, jo tieši BIOSa kods ir tas, kurš instruē proci ielādēt kādu no operētāj sistēmām. Runājot par kodu kompilāciju no programmēšanas valodām, tad vairāk vai mazāk universālais izejas kods (C, C++, utt) tiek specializēts, kompilācijas procesā, konkrētai procesora platformai (IBM savietojamie, citi) un operētāj sitēmai. Tādejādi gatavs nokompilēts palaižamais kods ir sagatavots darbam noteiktas OS vidē. Tieši šī OS tad arī prot instruēt proci izpildīt, šo te nokompilēto kodu.
Taču ja gribas izveidot programmu kuru procis nolasīs pirmo tiklīdz būs ieslēdzies, tad neatliks nekas cits, kā novietot izpildāmo kodu tā lai pirmā instrukcija atrastos adresē, kuru procesors nolasa pirmo(tātad vietā kuru parasti aizņem BIOS), nu un šai instrukcijai tad arī būs tad jāpāradresē uz vietu kur atrodas pārejais kods. Tad  ņemot vērā ka nav BIOSa kurš normālā gadījumā nodrošina kādu minimālu operētājsistēmas un tajā strādājošo programmu interveisu ar HDD, klaviatūru, grafisko kontrolieri, ... par to visu nāksies parūpēties pašam, atceroties, ka ražotāju draiveri arī tiek kompilēti noteiktai OS. Faktiski viss kas tev būs jāizdara, būs jāuzraksta sava BIOS un OS.

----------


## Epis

Par biosu man tagat ir skaidrs ka viņu vaig un laikam to dosu arī ka vaig, bet vienalga paliek jautājums par kādu normāmu C,C++ IDE kur var tās dos progas veidot debaggot un uztaisīt to Flash palaišanas kodu ?? 

Es nesaprotu priekš kam CNC vadības programmai vaig tādu Linuxu, es saprotu tā vienkāršu progu kas rēķina to PID visiem motoriem un skatās kas kur atpaliek un viss man liekās ka tur nav nekāds multitasking ! 
un tā patās jau kompim vaidzēs to IO portu papildināšanas karti taisīt ka maksās $$ un viss ticamāk ka tā IO karte būs uz tās pašas fpga tākā bez fpga tāpat nekas nesanāk un ja jau ņem fpga tad vienkārši ieliekam piereizes pāris procesorus, un nekādu linuxu nevaig, 

Es nēsu nekāds IT koderis, es esu embedded processor koderis, + Loģikas koderis, pie tā IT varētu būt tā visual studio 2005 proga.
IT vispār ir pavisam kas cits (es wiki paskatījos tad tas ir Information Technology and Telecommunications, kāds tur sakars ar dzelžu kodēšanu un vadīšanu ???

----------


## Delfins

BIOS nav jāraksta... BIOSā var norādīt no kurienes palaist programmu - hdd/cd/flash/network/etc.
Epja gadījumā tā būs apgraizīta OS. Neredzu jēgu pašam visu rakstīt, kā jau teicu - plikais pre-empty kernel to visu nodrošina.




> IT vispār ir pavisam kas cits


 Gribi pastrīdēties par to, ka bits nav informācijas vienība?




> Es nesaprotu priekš kam CNC vadības programmai vaig tādu Linuxu, es saprotu tā vienkāršu progu kas rēķina to PID visiem motoriem un skatās kas kur atpaliek un viss man liekās ka tur nav nekāds multitasking !


 Es nesaprotu, priekš kam CNC vajag kaut ko pārbaudīt. Jetijam tas CNC strādā perfekti bez jēbkādām pārbaudēm...

----------


## Vikings

Epi, tu neapsver domu paņemt LinuxCNC vai TurboCNC progu un pielāgot savām vajadzībām? Nu arī man jāsaka - kādēļ izgudrot jaunu velosipēdu ja ir vairākas programmas, kuras ņemt, izpētīt un pielabot. Redzot TCNC sourci redzams, ka cilvēki tiešām ir zinājuši ko dara un droši vien daudzus gļukus novērsuši.

----------


## nemos

> Par biosu man tagat ir skaidrs ka viņu vaig un laikam to dosu arī ka vaig, bet vienalga paliek jautājums par kādu normāmu C,C++ IDE kur var tās dos progas veidot debaggot un uztaisīt to Flash palaišanas kodu ??


 Nu ja esi izvēlējies programmēt DOSā, tad dari to. Modernie dzelži ar iešutajiem BIOS, nodoršinās tev DOS ielādi no Flash, padarot to par sistēmas disku un tātad piejamu visu uz tā atrodošos failu sistēmu ieskaitot tavu kodu. Tomēr pilvērtīgai flasha izmantošanai vajadzēs pameklēt DOS draiverus tā kontrolierim. IDEs DOSam domājam var pameklēt Googlē, kautvai Borlad viedoto TurboC http://dn.codegear.com/article/20841
http://www.dei.isep.ipp.pt/~ana/Prog_II/turboc.htm

----------


## Epis

> Es nesaprotu, priekš kam CNC vajag kaut ko pārbaudīt. Jetijam tas CNC strādā perfekti bez jēbkādām pārbaudēm...


 Jetījs savos eksperimentos EOZ forumā bīj rakstījis ka viņam tā frēze nemaz tik gludi nefrēzē un ja vidū programma nojūk tad viss aiziet šķibi un var mest ārā visu detaļu, man vaig to kvalitātes garantīju + ja kautkas nojūk tad lai programma to kļūdu fiksētu un izlabotu, vislabāk ka vispār nepieļautu nekādu lielu novirzi no programmas, šādi kontrolles mehānismi ir visām industriālajām CNC iekārtām tādēļ jau tās programmas un elektronika maksā vairākus 1K $$, tas ir arī tas ko man vaig kvalitātes kontrolli, un garantījut tam ka iekārta pate sevi nesāks bojāt. + var arī detektēt visādas papildu fičas kā instrumentu nodulums utt.



> Epi, tu neapsver domu paņemt LinuxCNC vai TurboCNC progu un pielāgot savām vajadzībām?


 Es jau vienreiz skatījos to linuxCNC sorce kodu un atradu tos visus trajektori gēnerātor kodus un citus, bet ko es par to linux varu teikt ka tāpat lai normāli viņu izmantotu ir jāņem jāčakarējās ar tiem PCI sltiem un jāpievieno papildus IO vadi un to izdarīt nav tik viegli tad ir jālien visā tajā linuxā iekšā, vieglāk ir uzrakstīt visus to algoritmus no nulles (vai pārkopēt) un zem kāda DOS palaist. 
+ tas linuxEMC nemaz tik ātri nestrādā.
kad būšu to savu C kodu priekš kontrolles uzdrukājis tad varētu domāt kur izdevīgāk to visu likt kādā kompja procī, vai mazajā fpga procī, ja kodi būs baigi matemātiski smagi tad varētu domāt par kompi un Dos.

----------


## Delfins

> Jetījs savos eksperimentos EOZ forumā bīj rakstījis ka viņam tā frēze nemaz tik gludi nefrēzē un ja vidū programma nojūk tad viss aiziet šķibi un var mest ārā visu detaļu, man vaig to kvalitātes garantīju


 A kā tad savādāk!?  Kļūdu tu nevari prognozēt tik vienkārši... Gan jau tur pie vainas ir gļukains kods, nevis tā izpilde!!! - Jānovērš kļūda paamtos, nevis sekas - Epi, tu pa nepareizo ceļu ej.

Pats redzēju, kā man Jetijs rādīja, kā vispirms paskatās uz PC CNC galvas iziešana traektoriju, un ja viss oke tad tālāk jau nekādas kļūdas nebūs, ja vien nepados kādu impulsu pa tiešo uz kāda izvada...

Un tu būtu tās kvalitātes garants, redzot kā lodē atmegas un cepeškrāsns?

----------


## Vikings

> Es jau vienreiz skatījos to linuxCNC sorce kodu un atradu tos visus trajektori gēnerātor kodus un citus, bet ko es par to linux varu teikt ka tāpat lai normāli viņu izmantotu ir jāņem jāčakarējās ar tiem PCI sltiem un jāpievieno papildus IO vadi


 Nu bāc, zināju, ka šitam nevar ticēt. Palasot aprakstu tapa skaidrs.
Ja slinkums meklēt tad rekur bildīte.
[attachment=0:3binvjtj]linux_emc.JPG[/attachment:3binvjtj]

----------


## Epis

Un kā tad Viking tavuprāt EMC2 proga zinās kas notiek ar motoriem, tu minēji to Estop bet man liekās ka tas neko īpaši daudz nedod ja motora draiveris redzot ka motors piebremzējās, vai atpaliek palaiž Estop signālu un vissu apstādināja, var būt daudz visādu gadījumu kad kāda no asīm regulāri atpaliks dēļ tā ka pietrūkst motoram jaudas un tad tiks izsludināts stop signāls, lai gan programma varētu turpināt pielāgojot pārējo asu ātrumu attiecīgi atpaliekošajai asij.

----------


## Epis

Viking es nupat skatījos geckodrive un granitdevice servo motoru draiverus kas ir samērā alabi (it sevišķi tas granitdevice kur es esu lasījis kā tas dzeks to draiveri taisa un cik krutas fičas viņā tur ir ieprogrammējis, un pat tur es neredzēju tādu Error izeju kas signalizētu kad motors ir apstājies un neiet (viņa arror izeja signalizēja ka kautkas ar pašu draiveri nav kārtībā), tākā es nemaz nezinu nevienu tādu draiveri kurš varētu sūtīt normālu Error signālu EMC2 softam, ja tu zini tad pasaki es apskatīšos.

----------


## GuntisK

Paklau Epi-ko Tu pi* smadzenes sev un citiem? Tu http://www.cnczone.com esi pierakstījies? Tur ir neskaitāmi piemēri tam kā cilvēki taisa tās cnc virpas ar parastiem soļu motoriem un iegūst kvalitatīvas detaļas (un nejau vienkāršas, bet tādas kā piemēram vītnes ar vairākiem gājieniem). Un strādā-neviens neko nesaka,vadība nav nekādi "navaročennie" softi- abet parastais TCNC, MACH2, EMC2 u.t.t. Virpu un detaļu vari sabojāt tikai tad kad ir nepareizi izveidots G-kods. Tas ko Tu gribi baigi atgādina kosmiskās tehnoloģijas.(un tas viss lai BMXiem riteņu rumbas taisīt? Tfu,johaidī!)

----------


## dmd

man jau likās, ka viss, kas cilvēkam ir vajadzīgs ir LPT un giveio.sys, ja nu nav paveicies ar operētājsistēmu...

nu nesaprotu. C, C++ mikroprocesoriem ir vienkāršs, bet x86, nē? ar visu to nenormālo jaudas rezervi, ko tu iegūsti jau pie kāda pI ?

neba jau taisies opengl izmantot. tas ir tikai dzelžu interfeiss, bļin.

----------


## Vikings

> programma varētu turpināt pielāgojot pārējo asu ātrumu attiecīgi atpaliekošajai asij.


 Tad vai nu motoram jāpadod vairāk jaudas/ātrāk soļi vai jāliek jaudīgāki motori. Nīkulīgas mehānikas dēļ taisīt megasarežģītu programmu? Rēķini vēl to, ka paies tomēr laiciņš kamēr draiveris sapratīs, ka ir ievērojama nobīde un šī nobīde jau atsauksies uz kopējās detaļas izmēriem. Ja tu būtu bijis pēdējā industrijas izstādē, būtu papētijis reālas mašīnas darbā. Piemēram, HAAS iekārta darba laikā uz ekrāna rādīja katras padeves motoru noslodzi. No noslodzes tad var manuāli pagriezt mazāku Feedrate Override. Var jau arī ieprogrammēt lai tas notiek automātiski.
Kļūdas izeja ir vairumam bloku, manuprāt, būtu normāli ja tā tiktu izmantota kā Estop variants amatieru konstrukcijā.
Šobrīd nesaprotu ko gribi - visu motoru vadību uzticēt kompim?
Lielā mērā jāpiekrīt Guntim...

----------


## marisviens

Ir man CNC un jāsaka, ja CNC zinātu savas reālās koordinātas, nebūtu kaudzēm izmēģinājuma paraugi jātaisa un nepārtraukti jāpaļaujas uz pieredzi un intuīciju. Maz ko var matemātiski aprēķināt. Aparāts pats ar to tiktu galā. Mazākais - samazinātu padeves ātrumu, ja netiktu uz priekšu. Vienmēr apstātos pirms beidzas sliede...

----------


## dmd

vaitad tavai cnc nav enkoderi? kas atiecas uz materiāla padevi, tad parasti izmanto vainu pašus parastākos slēdžus ar ūsiņu, vai arī infrasarkano pāri. ja ļoti ļoti gribas zināt reālo instrumenta atrašanās vietu, tad var darīt, kā reizēm printeros ir izdarīts - instruments slīd gar magnētisko lenti, kurā ir ierakstītas koordinātas noteiktos atālumos un savu vietu nolasa no tās.

----------


## marisviens

Ko Tu domāji teikdams "enkoderi"? Vai tas līdz, ja kāds solis ir izlaists mehāniski? Par slēdžiem domāji gala slēdžus? Magnetiskajā lentē manuprāt ir ierakstīti tikai impulsi, kurus dzelzis skaita, kas protams ir labāk, kā soļu motora padeves impulsu skaitīšana.

----------


## Epis

jautājums par kompju procesoriem cik viņiem ir iekšējo taimeru ?? , vai tik tā Step signālu ģenerēšana netiek taisīta programmiski līdz ar to tā sanāk kad lielā kompja jauda aiziet uz tādiem sīkummiem kā signālu gēnerēšana ko var izdarīt uz mazas cpld, vai 1Ls vērtas 8bit mikrenes. 

un re ka beigas kompi kodēt dzelžu līmenī ir daudz sarežģitāk nekā parastu mikreni, kodēt kompi ir viegli tikai tad ja izmanto kādu no visual studio stila programmām. 

Tas ko es te gribu uztaisīt ir Motion Card. 
Kāpēc tad intresanti šādas kartes ir visām industriālajām iekārtām bet nav nevienai hoby ierīcei ?? 
un kāda tad ir starpība satarp industriālo iekārtu programmām,elektronikas gudrību un hobby iekārtām ?? 




> Ko Tu domāji teikdams "enkoderi"? Vai tas līdz, ja kāds solis ir izlaists mehāniski?


 runa iet par rotējošo enkoderi kas fiksē ass rotācijas ātrumu un pozīciju, un pēc enkodera var droši pateikt vai motors griežās vai nē un tad ar gudrajām prorgammām var salīdzināt kādus datus rāda enkoderis un kā viadzētu būt pēc programmas un ja tie atšķirās tad ir kļūda kas ir jālabo, tā ir tā atgriezeniskā saite ar kuru kontrollē iekārtas darbu.

----------


## dmd

ar enkoderi es domāju sensoru, kas skaita reālos motora soļus, neatkarīgi no tā, kādi impulsi tiek padoti motoram. un tad jau var vainu mēģināt to kompenset, vai vienkārši pārtraukt darbu. visvienkaršākajā gadījumā darbības princips ir tāds pats, kā kadreiz bumbiņu pelēm. disks ar caurumiem un diode+uztvērējs, kas arī skaita tos soļus un reālo attālumu/ātrumu

lentē ierakstītas koordinātes būtu labākas, gadījumā, ja instruments nesāk ceļu no 0 punkta vai arī kads no tiem impulsiem netiek piefiksēts kautkāda iemesla pēc. varētu būt arī kautkādas kontrolkooridinātas un pa vidu vienkārši impulsi, te nu var izvērsties cik vien sarežģīti gribas.

----------


## Delfins

> līdz ar to tā sanāk kad lielā kompja jauda aiziet uz tādiem sīkummiem kā signālu gēnerēšana ko var izdarīt uz mazas cpld, vai 1Ls vērtas 8bit mikrenes


 Toties paskaties kādas frekvences pročiem. Kāda HW sistēmas kustomizācija! Atliek uzrakstīt draiveri un viss iet!
Windows/linux jau arī nepalaidīsi uz CPLD... 
Epi tu pats sevi ved bezgalīgā labirintā... iemācies vispirms labi izmantot vienkāršos devaisus. tad ķeries pie sarežģītākām.

----------


## karloslv

Epi, es Tevi nekad neņemtu darbā par programmētāju. Elementāras lietas nesaproti, skaidro Tev, cik gribi. OS nav nekāda vizualizēšanas vai programmēšanas vide, tā ir galvenokārt bibliotēka ar funkcijām, lai Tu vienkāršāk tiktu klāt tiem pašiem dzelžiem. Un nevis OS apgrūtina taimera izmantošanu, bet normālā OS tieši ir funkcijas, lai tiktu klāt taimerim neatkarīgi no visādiem dzelžiem. OS nav obligāti jābūt multitasking. Programmēšanai nav nepieciešama vide, tas ir tikai cilvēku slinkuma ielāps. Ja neproti programmēt uzreiz failā bez krāsainām vidēm, tad Tu esi sūdīgs programmētājs, atzīsti to, nevis te lamā OSus un mētājies ar kaut kādiem murgainiem tekstiem par 'linux jau nav derīgs programmēšanai'.

----------


## dmd

atvainojiet dubultpostu.
epi, nesaprotu, kas tev liekas tik nenormāls i sarežģīts tur?
ja gribi, raksti kodu C, ja gribi, asmā... amteļu un inteļu arhitektūras ir stipri līdzīgas, man pat šķiet, ka reģistri ir tādi paši. 
jaudas, cik uziet, pat pašiem vienkaršākajiem procesoriem (ir jau kautkāds iemesls, kāpēc intel pārtrauca 80386 ražošanu tikai šogad) 
porti ir jau gatavi, pieejami, interfeisus starp atmiņām un diksiem nodrošina bios, 32 bitu arhitektūra... un galu gala programmet vari kaut beisikā. 

nu ir iemesls, kapēc apmeklējot rūpnīcas, redzu, ka visas CNC ir uz pīšiem  (eksotiskie varianti gan ir ietvēruši vienu aizvēsturisku BBC dzelzi)

----------


## Velko

> jautājums par kompju procesoriem cik viņiem ir iekšējo taimeru ??


 Pašiem "elementārākajiem" (šķiet sākot no 8086, varu kļūdīties) ir vismaz 3. Viens izsauca timer interruptu, viens tika izmantots PC speaker skaņas ģenerēšanai, un vēl viens, kura pielieojumu es neatceros   ::  Tas ir cik atceros no ASM kursa RTU   ::  Īpaši neesmu pētījis jaunāku dzelžu uzbūvi - vienkārši nav vajadzības.

Runa nav par to, cik taimeri pieejami dzelžos, bet gan cik softā. Ja nekļūdos - pat nebija konkrēts ierobežojošs skaits. Kompi dzelžu līmenī programmēt ir samērā sarežģīti, taču to darīt nav vajadzības - tas ir operētājsistēmu/draiveru programmētāju darbs. "Parastajiem mirstīgajiem" koderiem pilnīgi pietiek ar OS funkciju izmantošanu. Un ja arī signālu ģenerēšana jādara softiski - priekš kompja jaudas tas tāds "pirdiens vētrā" vien ir.

Ja gribi DOSā C programmēt, tad ņem Borland C++ 3.1 - daudzmaz lietojama IDE, sanāks tev normālas DOSiskas programmas. Jaunāku neņem - tur sāk Windows mēsli pa starpu maisīties.

Par Linux, tas jau izklausās pēc sērijas - mēģinājis neesmu, bet tāpat zinu, ka nepatiks. Īstenībā Linuxā daudz ko izdarīt  ir stipri vienkāršāk.

----------


## dmd

sākot jau ar to, ka linux ir vienkāršāk lietot  ::  (pats majās lietoju gandrīz tikai linuxu, vienīgais, ko man no windowsa vajag ir avrstudio, ko pagaidam nav sanacis piespridzināt zem pingvīna)

arī programatūras izstrādes rīki IMHO ir samērā ērti un nopietni (būtu dīvaini, ja geeki, kas ir lielakais linux darbastaciju lietotāju kontingents nebūtu izstrādājuši normālus tūļus), laigan opats neesmu programmētājs, tāpēc nelamājiet par šo viedokli.

----------


## Delfins

Ir ir *nix daudz ērtāks lietošanā... konsole (ar visām pergām) vispār nepārspejama. Raksti skriptus kādus vien vajag... crontab-ā šeduleri taisi (nevajag neko kodēt pat)... Praktiski viss ir izdarāms no konsoles. Windows-am šitais krietni atpaliek (var jau uzlikt win-portus, bet tas ir mazohisms), konsoles progu vienkāršām darbībām pamaz. A rakstīt savu OS ir neprāts... bija mums jau te tādi latvijā  ::    Nokompilēja bootloadera kodu un ar to viss beidzās.

Otrkārt, lai kaut ko kodētu HW līmenī, jābūt ekselentām C/C++/ASM zināšanām. Epi tev tādas diez vai būs... sorry.

Viens ir fakts, strīdēties ar Epi ir beztolks, pārlec no viena temata uz otru.

----------


## Velko

*dmd*: Man līdzīga situācija ar Linux lietošanu. Uz Win darbinu tikai spēles vai Delphi (ja vajag darba vajadzībām ko paprogrammēt).

Par AvrStudio, zinu ka tā ir "šmaukšanās", bet darbinu jamo iekš *qemu* (virtuālā mašīna), kurā uzinstalēts Win2000. Drusku bremzīgāks tas pasākums sanāk, bet man slinkums pārstartēties kad AvrStudio ievajagas.

Par IDEm uz Linux gan nāksies oponēt. Nav nācies redzēt Visual Studio vai Delphi klases izstrādes vides. Ja nu vienīgi Eclipse, bet tur nākas "pajāties" ar Java, kamēr izdodas palaist. 

No otras puses - nejūtu īpašu vajadzību pēc super-duper izstrādes vidēm. Normāls teksta redaktors, konsole un (ļaunākajā gadījumā) gdb - viss kas vajadzīgs.

----------


## Delfins

Kylix - ir delphi priekš Linukša
Visual Studio - tas ir M$ ražojums windows platformai un ar to viss pateikts... te nekā nebūs.
Bet linukšam ir dafiga citas IDE-s, kas piedāvā izstrādāt gan GUI progas ar vizualizāciju (Gnome/KDE), gan parastās konsoles programmas.
Praktiksi visos gadījumos tiek izmantots GCC un tā atvasinājumi.

Vienkāršām progām pietiek ar Makefile un pārs koda failiem.

----------


## Epis

Nu apmēr skaidrs par to kompja prorgammēšanu dzelžu līmenī lai kautko tādu ieprogrammētu paietu kāds pus gads kamēr iemācītos un tad varētu kautko veidot, un pus gadu ziedot tādām mācībām es toč negribu, labāk izmantot tās zināšanas kas jau ir un visu cept uz fpga, svādāk sanāk tā kad kāda jēga bīj apgūt fpga ja pēctam tā īsti neizmantoju visu fpga potenciālu, itkā to ucLinux arī var uz fpga proča uzlikt bet lasot forumos kur jauniņie jautā cik izlgi jāmācās lai kautko sāktu saprast un atbilde ir apmēram pus gads, un ja es bez tā uclinux varu iztikt tad man viņu pagaidām nevaig ja kādreiz nonākšu līdz tam posmam ka bez linux iztikt vairs nevar tad būs jādomā. 

runājot par tām CNC iekārtām tad vikings teica kad normāli viss strādā ja motori darbojās uz 50% slodzi, man problēma ir tāda kad man Kā cilvēkam ar ekonomikas zināšanām ir mācīts ka jāizmanto viss maksimāli cik vien var izmantot tātad ja ir iekārta tad viņai jāstrādā Maximāli produktīvi, varu atzīties ka jau uz savas mazās virpas, kad taisīju tās pāris detaļas es mēģināju atrast to maximālo darba ražīguma robežu un rezultātā lai uztaisītu pāris detaļas es izķēzīju kādas 10 detaļas kamēr atradu kautcik stabilus darbības MAX ātrumus, bīj tā kad detaļas lidoja ārā no virpas, un strēga iekšā dēļ parāk lielās slodes  :: , un toreiz es jau domāju kā tad tie kuriem ir industriālās iekārtas izspiež no viņām to Maximumu tāpat kā es vai?, ķēzot matreālu un eksperimentējot, atbilde protams ir nē viņiem ir gudrie motion kontrollieri kas to procesu regulē un ja kāds motors sasniedz maximālo slodzi tad visi motori pielāgojās tam un iekārta strādā ar maximālo ražigumu. 

piemēram iedomājieties ka jūs esat Rūpnieks un nopērkat iekārtu par kādām 100K $$ un vai tad jūs viņu darbināsiet ar 50% slodzi? nē jūs viņu darbināsiet ar 100% ja ne vairāk (jo parasti iekartām vēl ir jaudas rezerve) un šos te ātrumus nevar sasniegt bez inteliģentās elektronikas.

----------


## Delfins

> piemēram iedomājieties ka jūs esat Rūpnieks un nopērkat iekārtu par kādām 100K $$ un vai tad jūs viņu darbināsiet ar 50% slodzi? nē jūs viņu darbināsiet ar 100% ja ne vairāk (jo parasti iekartām vēl ir jaudas rezerve) un šos te ātrumus nevar sasniegt bez inteliģentās elektronikas.


 Puis, paklau, tu jauc ražīgumu (visas iekārtas slodzes koef) ar konkrētas detaļas slodzi... tas nav viens un tas pats!
Slikts esi ekonomists. Tādiem 2-kus liek.

----------


## Velko

Kylix manuprāt ir baigā Borlanda parodija par tēmu Delphi uz Linux. Šķiet, ka uz mūsdienu distribūtīviem ir pat diezgan jāpacīnās, lai palaistu. Pats Borland apstājās pie 3 versijas un tālāk vairs netaisa. Drīzāk var mēģināt Lazarus (GPL, bāzēts uz FreePascal), bet arī nav nekāda medusmaize.

Nedomāju jau tieši Visual Studio vai Delphi, bet kautko tādu, kas rada līdzīgu pabeigtības sajūtu. Diemžēl neviena no Linux IDĒm, kuras esmu mēģinājis, nerada sajūtu "Vo! Tas ir tas, kas man vajadzīgs - turpmāk lietošu šo". Tā ka klabinu vien tālāk Emacs-ā.

----------


## GuntisK

> un toreiz es jau domāju kā tad tie kuriem ir industriālās iekārtas izspiež no viņām to Maximumu tāpat kā es vai?, ķēzot matreālu un eksperimentējot, atbilde protams ir nē viņiem ir gudrie motion kontrollieri kas to procesu regulē un ja kāds motors sasniedz maximālo slodzi tad visi motori pielāgojās tam un iekārta strādā ar maximālo ražigumu. 
> piemēram iedomājieties ka jūs esat Rūpnieks un nopērkat iekārtu par kādām 100K $$ un vai tad jūs viņu darbināsiet ar 50% slodzi? nē jūs viņu darbināsiet ar 100% ja ne vairāk (jo parasti iekartām vēl ir jaudas rezerve) un šos te ātrumus nevar sasniegt bez inteliģentās elektronikas.


 Pirmkārt CNC nav tikai elektronika vien, lielā mērā tieši mehānika nosaka visu. Rūpnieciskos darbgaldus jau neprojektē kkādi "dulburi", viss tiek aprēķināts jau izstrādes procesā. 
Otrkārt-katram materiālam ir savi maksimālie griezšanas ātrumi, zem kuriem tad arī iestata griežņu padeves ātrumus. Savādāk tiešām ķēzīšana tik sanāk.
Treškārt-varbūt, ka kļūdos bet darbināšana ar 100% slodzi būtu jāsaprot kā darbgalda darbināšana dienu un nakti.   ::

----------


## dmd

epi, a tu esi redzējis kadu "īsto", lielo cnc dzīvē? nē, tur nav mazi printeru motorīši, bet gan kartīgi daudzņūtonu aparāti - tā, lai jauda pietiek un ir rezerve. nu piemēram šitāds aparats - http://www.sproduction.no/images/ig_200y.JPG 
zini, kas viņam tur ir visā taja lielajā kastē? nē, tā nav elektronika, bet gan kartīgas sliedes un tādi motori, ko es negribētu sev uz kājas uzmest, ka arī dzesēsanas šķidruma pumpis. pieņemu, ka par to tu vispār neesi padomājis.

kas atiecas uz elektroniku, arī nekas kosmisks tur nav - cardpc, windows95, un interfeiss uz motoru draiveriem. parasti enkoderi, kuri drausmīgi apjūk, ja gadījumā aparats tiek ieslēgts un instruments neatrodas vietā un visparastākie analogie galaslēdži. 

/nu labi, es nedaudz vienkaršoju, bet turpat blakus šitam kāda rūpnīcā stāv cnc metinatājs, kas gluži mīlīgi griežas uz 80386, bezjebkadām fpegām un cita šita - 2lpt porti un darīts

----------


## GuntisK

Oi kā tagad gribās ātrāk atvest savu cnc virpu uz mājām un sabildēt kas viņāi iekšās un parādīt Epim. Tur vispār - НЦ-31 vadības skapis gandrīz tik no vienas loģikas sastāv, procesori bez takts signāla ģeneratora (K588 sērija), servo motori ar tiristoru vadību (KEMTORi), visa elektromehānika-palaidēji etc.etc. Un strādā tas brīnums jau 25 gadus.   ::  Nekādu FPEGU, nekādu INTELu.   ::

----------


## Vikings

Iespamošu ne pa tēmu.
Epi, es tev silti iesaku pastrādāt kādu laiku kādā uzņēmumā kurā ir programmējamie darbagaldi. Remonts, apkalpe, programmēšana, vienalga. Galvenais ir tas, lai varētu to visu apskatīt no iekšas un redzēt kā profi to visu ir taisījuši. Pēc gada vai diviem skatījums uz lietām būs pavisam savādāks. Jā, tajā laikā maz būs laika saviem projektiem, bet būsi ieguvis tāāādu pieredzi uz kuras balstoties varēsi būvēt jau ievērojami pārdomātākas konstrukcijas. Tev tagad vienkārši nav nekāda atskaites punkta, tu neesi reāli izložņājis kaut 20 gadus vecu darbagaldu un nezini kā viņš izskatās iekšā. Redzot, ka 4asu mašīnu var vadīt ar 80286 proci, 3fāzu servo ar 80186 proci, vai 3asu erozijas mašīnu vadīt ar krievu proci, kas tagad skaitās totāls dranķis, tu saprastu, ka nevajag nekādas mega tehnoloģijas, lai panāktu vēlamu rezultātu. Jā, forši ir izmantot jaunas tehnoloģijas lai samazinātu izmērus, paielinātu iespējas, bet tas jādara lai tiešām būtu tas rezultāts. Savādāk sanāk tā, ka šobrīd viens amatieru galds apgrābstīts, kaut kas padarīts, nepatika, pamēģina savādāk, nesanāk, davai jāmēģina savādāk un tā ilgi...

----------


## Epis

> epi, a tu esi redzējis kadu "īsto", lielo cnc dzīvē? nē, tur nav mazi printeru motorīši, bet gan kartīgi daudzņūtonu aparāti - tā, lai jauda pietiek un ir rezerve. nu piemēram šitāds aparats zini, kas viņam tur ir visā taja lielajā kastē? nē, tā nav elektronika, bet gan kartīgas sliedes un tādi motori


 laikam jau ka nē un visas iekārtas par kurām esu lasījis, pētījis ir bījušas spēļmantiņas, man ir tāda sajūta ka es visu laiku rakstu par vienu un to pašu ! tādēļ man ir tikai viens jautājums pēc kura atbildes iespējams ka es vairāk par šito cnc lietu nediskutēšu. 
jautājums: 
Vai cnc iekārtām ir vaidzīgs tas motion kontrollieris vai nav ???   un savu Jā vai Nē pamatot.

----------


## Mosfet

Epi tavs jautajums ir tikpat stulbs ka jautāt vai kompim vajag windows.Konkretizē domu ko  tas kontrolieris darīs-pamatfunkcijas .Precizē sev kādas piedzinās tipu tu gribi izmantot -"servo" vai "stepper".
Un vēl ļoti tev noderētu palāsīt metalapstrādi ar griešanu  pamatus, ja vajag varu iedot elektroniskās grāmatas (krievu val, jo citiem ekvalentu nav nācies redzēt)

----------


## Delfins

Nē, 
- jo viņš nav obligāts
- jo citi neizmanto
- un ja iekārta uzbūvēta uz aprēķināta modeļa (inžinier-tehniski pareizi)

----------


## Vikings

Ja tu ar Motion Controller domā kustību vadības bloku tad padomā pats vai vispār iekārta var pastāvēt bez tāda? Principā taču visa iekārtas elektronika galvenokārt atbild par kustību vadīšanu. Motoru vadība, kustību aprēķināšana.
Mosfet, ja ir iespējams, izliec grāmatas publiskai pieejai, tā varētu būt vērtīga informācija ne vienam vien foruma dalībniekam.

----------


## 0xDEAD BEEF

Ceru, ka nepateiksu neko tadu, ka te jau ir bijis rakstits!
Tatad - pats datora cpu nemak ieladet programu no kautkurienes. tapec datora ir bios. Bios, pa mojemu, ir mikroprocesors ar flashatminu. Daotru iesledzot, bios sak darboties. Tad bios ieraksta operativaja atmina pirmo kodu, un dod procesoram komandu sakt izpildit kodu, kas atrodas atminas 0 adrese. Tapec taisot jmp uz 0, notiek software resets datoram.
Biosa programa satur basic operetaj sistemu. Proti, tiek nodefinetei sakuma interupti (ingterupts seit tiek domats ka funkcija). piemeram 21 interputs laikam atbildeja par video funkcijam un 13 atibldeja par operetajsistemu (bet negribu sadirst). lai nu ka, programa var izsaukt interuptu un nodot parametros (ax, bx utt), ko interuptam darit. Piemeram - uzstadit jaunu video rezimu vai ari lasit no failu sistemas failu.
Talak biosa programa ielade mbr. MBR ir programa, kas atrodas cieta diska (vai flash diska) pirmaja sektora. Parasti MBR palaiz programu, kas atrodas uz diska faila io.sys, msdos.sys vai ntldr (vai ka tamlidzigi). 
Ja tas ir linuxa mbr, tad tiek palaista linuxa operetajsistema.

Principa, lai darbotos dators, tam pietiktu tikai ar biosu un datu neseju, uz kura atrodas programa. biosa dos operetajsistema ir pietiekama, lai palaistu .com vai .exe failus, kas ir paredzeti dosam. Windowsa neder, jo windows ir pilns ar dll iem, kuri nav biosa.

Tu vari rakstit savu programu ari c++ windowsa vai ari linuxa. tam nav nozimes, kur tu to programu kode. Svarigi ir tas, ka tu vinu izsauc. Piemeram - tu vari kodet visual studio c++ (par net aizmirsti) un likt linkot .dll faila. Pec tam no dll faila extracto lauka izsaucamo sekciju un parvert dll failu par com failu un palaid.

com fails principa ir tiirs asm. com faila izmers nedrikst parsniegt 64kb. ja tu izmanto windowsa dll, tad atceries, ka nedriksti izmantot arejos dll. Tas nozime, ka tavs kods bus arkartigi primitivs anyway.
Beefs

----------


## Epis

beef labs apraksts.

šeit no Wikipēdijas pamat funkcijas ko veic Motion kontrollieris 

Common control functions include:

    * Velocity control.
    * Position (point-to-point) control. There are several methods for computing a motion trajectory. These are often based on the velocity profiles of a move such as a triangular profile, trapezoidal profile, or an S-curve profile.
    * Pressure or Force control.
    * Electronic gearing (or cam profiling). 

ir vēl visādas funkcijas ko tas kontrollieris dara bet būtība jau ir kontrollēt visus processus

motora tipam šeit galīgi nav nekādas nozīmes, nozīme ir tam ka, ja tāds ir vajadzīgs ta redz ka cilvēki maksā vairākus K $$ par tādiem kontrollieriem. tiem kam nevaig tiem laikam ka nevaidzēs bet kam vaig tie nešaubās ka tas ir vajadzīgs, un man arī vaig.

----------


## Mosfet

Epi wiki tu vari atstat sevkā pasaciņu .Sevisķi 2 un 3 punkts.
Es tev prasiju ko tu definē ar šo bloku. Ceru ka nebiji iedomājies ka motors pats griezīsies.
Bet motora tipam ir nozīme.

----------


## dmd

pasaki kaut vienu labu iemeslu, kāpēc ar to nevarētu nodarboties dators? 
ā, nu jā... tas nebūs overpriced fpegas dēlis... 

varēsi pat neoptimizēt algoritmu, nebūs jādomā par to, ka kautkāds primitīvs krāsniņas kontrolieris neiet jau otro mēnesi, cilvēki lielāko daļu dzelžus jau būs salodējuši...

----------


## Epis

Drīzāk vesela datora izmantošana ir overkills, bet lēta 15$ fpga ar pārējām detaļām sanāk pie 30Ls ir normāls lēts risinājums

tas krāsns kods ir tajā asmā kodēts un tur to kļūdu ir tik daudz dēļ tās asm valodas, salīdzinoši kompja programmā nekādu kļūdu nav lai gan kods tur ir 10x sarežģitāks, un fpga mikrenes programmē augstā līmeņa valodā tākā tur kļūdu % arī ir zems + proci es kodēšu ar C valodu tāka viss ir normāli.
es visu laiku esu teicis ka asms ir labs priekš mazām prorgammām (pāris lapas), bet tādām sarežģitām jau ir grūti ar asm.

dmd es jau visu laiku runāju par to ko dara tas bloks, kas man vēlreiz viss jāatkārto, neko jaunu jau es pateikt nevarēšu ja teikšu tad tas būs tas pats vecais jau pateiktais.

----------


## dmd

es iztulkošu tevis ieliktos punktus. 

*kontrolē ātrumu - check - lpt
*rēķina trajektorijas - check - datoram ir daudz resursu, lai to darītu
*spiediena vai spēka kontrole - check - vienkāršākajā gadījumā skaņaskarte ar vismaz 16 bitu izšķirtspēju
*elektroniskā pārnesumu slēgšana vai?

+neba jau tev karte visu viena pati darīs. tas kompis tur jājūdz klāt vienalga  :: 

kļūdas no asm valodas nebūs vairāk kā no jebkuras citas. programmēšana notiek galvā, programma kompī ir tikai tās izpausme.
nu pasaki, savai krāsniņai uztaisīji flowchartu? uzrakstīji uz papīra, ko tai jādara? varbūt tu nezini, bet vispār lietas projektē aptuveni tā
1) izdomā, ko īsit vajag  - tātad mums vajag teiksim krāsniņu.
2) saraksta specifikācijas - tātad mums ir vajadzīgs silšanas ātrums 1 kelvina grāds sekundē ar karstā gaisa plūsmu. vēl mums vajag kontrolētu dzesēšanu. deviācija +/- 5 kelvina grādi, maksimālā temperatūra 573 kelvina grādi
vēl mums vajag interfeisu ar ko mēs varam programmēt to krāsni bez kompja konekta. 

3) skice kā aptuveni darbosies mūsu dzelzis, kur kustēsies gaiss, ko var uzlabot? 
4) taimauts vienu dienu
5) atgriezties pie punkta 3 un veltīt tam vismaz 4 stundas no vietas
5) aziiet uz kino vai kāda cita aktīva izklaide. nedomāt par projektu
6)programatūras algoritmu un principu izstrāde. izstrādā kontroles algoritmus, programmēšanas algoritmus (lai nevajadzētu kompi) saraksta flowchartu (es gan pats parasti rakstu nevis flowchartu, bet gan vienkārši ar vārdiem - "salīdzinam to ar to. ja ir vienādi, tad ejam tur un daram to.
7) detaļu savākšana atbilstoši specifikācijām un algoritmu un principu vajadzībām
sildelementus tādus, kas ātri uzsilst un ātri atdziest
termopāri- atbilstoši specifikācijai
pārējās lietas, atbilstoši nepieciešamajai precizitātei
 ::  uzrasējam krāsniņu, pamanam gļukus, rasējam no jauna
9) samontējam krāsniņu atbilstoši rasējumam
10) notestējam silšanas ātrumu, dzišanas ātrumu, maksimālo temperatūru
11) ieslēdzam datoru un pēc iepriekš sastādītā algoritma uzrakstam programmu
12) saštepselējam kopā un nobrīnamies, ka nedēlas laikā esam visu uztaisījuši un pa lēto.

----------


## Velko

Epi, tev kā ekonomistam jau nu vislabāk vajadzētu zināt, ka arī laiks ir nauda. Ko līdz "lēta" $15 FPGA, ja esi iztērējis jau n-tos tūkstošus, pārrēķinot patērēto laiku naudā? Un nez cik vēl iztērēsi, kamēr tā virpa sāks griezties. Vai varbūt tu uzskati, ka tavs laiks ir nulles vērtībā? Pat ja tā - saskaiti vēl nez cik tur latus par plašu taisīšanu, krāsns būvēšanas izdevumus un sazin ko vēl ne - daudzreiz lētāk sanāktu nopirkt kādu vecu kompi  (kurus var dabūt bezmaz "uz svara").

Ja tu gribētu darīt kā pašā sākumā rakstīji - "Virpa darbosies un pelnīs man naudu", tad sen jau virpa darbotos. Ja tu saki, ka gribi uztaisīt CNC virpu, tad tev citi arī iesaka lētākus/ātrākus risinājumus. Un nav ko spirināties - tie tiešām tādi ir.

Toties, ja saki: "Mans hobijs ir spēlēties ar FPGAām. Gribu pamēģināt ar tādas palīdzību kontrolēt virpu.", neviens arī nenosodīs. Izklaides pēc cilvēki mēdz darīt dažādas dīvainas lietas  ::

----------


## a_masiks

> Vai cnc iekārtām ir vaidzīgs tas motion kontrollieris vai nav ???   un savu Jā vai Nē pamatot.


 Vajadzīgs jau ir. Tikai inženieriem no tevis atšķiras izpratne kas tas tāds motin kontrolieris ir.
Man ir zināmi vairāki struktūrvarianti. Katrs pielietojams savam uzdevumam, savai specifikai. 
Uz reiz atrunāšos, ka neesmu CNC spečuks, lai gan pasen bija jānojājas ar Admap 5 pieslegšanu pie kompja un attiecīgi jāpārdomā visi šie varianti.

1) kompis kā pilna darba stacija ar daudz I-O portiem, kas ar daudz <-> vadiem savienota ar CNC katra mototra katru tranzistoru. 
Priekšrocības -  visa CNC kontrole notiek datora vidē, normālā opsistēmā, vizualizēta un pilnīgi kontrolēta. CNC darba galds prasts kā veļonoks - tikai tiristoru-tranzistoru slēdži un sensoru devēji.
Trūkumi - mežonīgs vadu daudzums, ierobežotas iespējas pieslēgt daudzas izpildierīces, jāliek daudz I_O kartes vai jāprojektē speciāla daudzkanālu I_O karte, jo katram prastākajam soļu dzinējam vajadzīgi vismaz 4 vadības gali. Kompim uzkaroties iespējams kaut ko salauzt vai nosvilināt. CNC vizuālā interfeisa nav. *Labots* - interfeis ir, tikai nevis CNC darbagaldā, bet gan  pīsī kā pīša parastais interfeis - ar klavieri un monitoru.
Pielietojums - CNC galdiem ar max 2 soļu/servo motoriem, lēts fiksais risinājums.

2)kompis ar kodētu I_O protokolu, kas savienots ar nelielu skaitu <-> vadu ar CNC darbagalda dekodera loģiku. Dekodera loģika var būt elementārā loģika vai sīki mikrokontrolieri.
Priekšrocības - ar nedaudz vadiem var iegūt labāku rezultātu, nekā variantā 1. Var izmantot 1 LPT portu līdz pat 16 servo/soļu dzinēju vadībai. Atkarīgs no kodēšanas veida. Dekoderi diezgan unificēti, vienādi. Ļoti daudz programmu, kas speciāli šim nolūkam jau izstrādātas. LPT porta vietā var izmantot FTDI USB->LPT pārveidotāju...ērti.
Trūkumi - tik patkā nav,un tie visi saistīti ar konkrēta CNC galda konstrukciju un izvēlēto interfeisu. LPT portam ir trūkums - maza iespēja atgriezeniskai saitei. Nevar atpakaļ nosūtīt daudz datus no daudziem sensoriem. Vai arī jāveido emulētais virknes interfeis uz tiem dažiem input galiem. Un jātaisa sensoru datu savācējs... virknes koda ģenerētājs... tas jau velk uz nākošo - 3 punktu...  CNC vizuālā interfeisa parasti nav, lai gan ir iespējamas kontrollampiņas.
Pielietojums - šobrīd /manuprāt/ visplašākais. Optimāls variants starp cenu/sarežģītību/veiktspēju/pieejamību/softa nodrošinājumu.

3)kompis kā izejas datu avots, caur kādu standarta interfeisu /LPT,USB,COM/ <-> CNC ar savu mikrodatoru, kas strādā visamaz 2 režīmos - a) tiešās kontroles režīmā, kad elementārās vadības komandas tomēr nāk no kompja, bet izpilda tās mikrodators. b) augsta līmeņa valodas interpretātors, kaut kas līdzīgs vektoru grafikas apstrādei. Dators atsūta sākuma-beigu koordinātes, pielietoto instrumentu, bet kontrolieris pats sarēķina kā viņš izpildīs šo uzdevumu. Ar visiem paātrinājumiem un instrumenta noslogojumiem.
Priekšrocības -  kā izejas datu avots var kalpot ļoti vienkāršs vektorgrafikas fails. Ja mikrodatoram tiesām ir megaietilpīga flašatmiņa - CNC var strādāt stand alone - viens pac. Grūti nokopēt vai uzbūvēt kaut ko līdzīgu /autortiesību aizsardzība/.
Trūkumi - kaut ko tik murgainu es nevēlos redzēt. Tāds bija Admaps. Pašam savs 580 procis, pašam sava unikāla vektorgrafikas valoda, kas piesaistīta un ierobežota ar CNC darba galda specifikāciju. Iespējams izdarīt tikai iepriekšdefinētas lietas un darbības /predefinētas aperatūras, predefinēti līniju biezumi, predefinēti ACII kodi - nekādu boldu,izmēru un italikas/. Tiešās vadības režīmā vispār murgs - katrs elementārais solis tiek apstrādāts kā komanda /kas arī īstenībā tāda ir/ un ATSEVIŠĶI atstrādāta. Ar nepieciešamajiem taimautiem. Rezultātā līniju ar elementārajiem soļiem Admaps zīmēja ar ātrumu - 5 soļi sekundē, kur soļa garums - 0,025mm. Resp - dators ar savu AT 286 proci milisekundē sarēķināja zīmējamo traektorju lelementārsoļos, un Admapa procis to visu pārrēķināja. NAHRENA???? Lai pacūkotos un 1cm 10 minūtes zīmētu????  CNC vizuālais interfeis - trūcīgs: kontrollampiņas, 7 segmentu kodu indikātors pēc principa - uzmini nu, kādu error kodu es tagad rādu?
Pielietojums - specifiskas šauras specializācijas un šaurā profilā integrētas sistēmas. Vispār parastais printeris tieši šādi strādā. Tā teikt - specializēti aparāti kāda viena konkrēta uzdevuma veikšanai. Pielāgot šo darba galdu mazliet cita, modificēta uzdevuma veikšanai jāsāk ar mirkodatora modifikāciju, kā modinga instrumentus izmantojot cirvi un lomiku. 

4) bez ārējā datora, CNC darba galds ar savu modificētu, bet pilnvērtīgu pīsi, ar monitoru, vadības pogām vai pat klavieri, iebūvētām dažādu funkciju apakšprogrammām, ar OS,ar darba programmu, ar izpildāmo datu glabātuvi, ar iekārtas parametru aprakstu, ar tiešu sensoru kontroli, ar tiešu izpildierīču kontroli........... BET!!!! Tas taču ir tas pats kas punktā Nr1!!!! Tikai garie vadi ir saīsināti un datora korpuss apvienots ar CNC darba galda korpusu....
priekšrocības - lai arī risinājums izskatās dārgs, tas tomēr ir lētāks kā Nr3. Iespējas šim risinājumam ir nesalīdzināmi lielākas par Nr3. Emulēt šī komplekta darbību var pat uz parasta pīša, pats kompis ir viegli un fleksibili pievienojams visiem populārākajiem komunikāciju standartiem starp citiem kompjiem - flopim, USB, COM, GPIB, LAN, flaškartēm.
trūkumi -  nu gandrīz tie paši,kas Nr1, - jātaisa tomēr nelielas modifikācijas lai iegūtu max daudz I_O portu, vai jātaisa hibrīds ar ieientegrētiem Nr2 varianata dekoderiem. 
Pielietojums - tik pat plašs kā variantam Nr3 un specifika tā pati. Kā jau pieminēju - R&S savos mega krutajos un mega dārgajos mēraparātos lieto tieši šo variantu. Taisnības labad jāpiezīmē, ka lētā un švakā gala pārstāvji -  Villtek izmanto 3 variantu, bet paši arī atdzīst, ka viņu produkts nekādi nespēj konkurēt ar R&S aparatūru.
IMHO tas būtu par tām dažādām CNC vadības koncepcijām. Ja es kļūdos - - varat palabot...  ::

----------


## Epis

apmēram tāds cnc vadības iedalījums varētu būt kā rakstīja a_masiks savos 4 piemēros, vienīgi es tur īsti savu variantu nevarēšu saskatīt, itkā tas velk uz 3 bet tomēr ir atšķirīgs, šeit manējais variants no tā ko sūta dators fpga un ko fpga dara.

mans variants un tagat ko dara datora programma kura jau ir sākta taisīt(pirms vairākiem mēnešiem) un atbalsta 2 G instrukcijas.
ieliekam programmā G-kodu un tad programma viņu dekodē un izrēķina visus paātrinājumus, laikus kas vaidzīgs lai to kodu izpildītu tikai šajā posmā reiķina vispārējās vērtības, ar vispārējām vērtībām es domāju to ka netiek reiķinātas katra motora soļa ātruma vērtība, tajā vietā tiek izrēķināts cik soļi motoram ir jāiet ar konkrētu ātrumu vai paātrinājumu (šeit ir smagas fizikas formulas), kad dators ir to izrēķinājis tad sūta to uz fpga plati caur USB FTDI čipu fpga platei, tākā šāda tipa kods ir faktiski tās pašas G-komandas tikai jau ar nelielu pirmsapstrādi tad sūtāmais fails ir ļoti mazs (no pāris desmit baitiem, līdz pāris Mb priekš ļoti lielām prorgammām).

ko darīs fpga un tad šitas man vēl nav uzkodēts.
1.Fpga saņems datus kurus sūta kompis saglabās viņus savā 16Mb parallel flash atmiņā (kādi 10Mb būs priekš G-koda glabāšanas(vairāk vienkārši nevaig)). 
2. Fpga iekšējais procis sāk ņemt G-koda datus un rēķināt no tiem katra soļa ātrumu, un tālāk tos datus iespējams ka saglabās kādā ietilpūgā RAM atmiņā, piemēram manā 128Mb SDRAM, iespējams ka tā SDRAM atmiņa tiks veidota kā milzīgs FIFO un kalpos kā soļu komandu glabātuve.
3.  No FIFO RAMa informāciju lasīt otrs iekšējais fpga procis kura uzdevums tad būs izpildīt šīs komandas un kontrollēt to processu ģenerējot vai nu Step signālus vai arī vadīt pataisno tranzistorus, + nolasīt enkoderu datus un rēķināt tās PID vērtības (varbūt ka PID matemātika būs iekš loģikas apmēram kā Hardware accelerator, par to būs vēl jādomā, 
Varu pateikt ka vītnes iegriešanai man izņemot lineāro interpolāciju neko vairāk nevaig, (varētu pievienot apļa interpolāciju arī, bet par to spline īsti nezinu vai vaig !
Var vēl piebilst ka Step signālus un citus signālus kurus saņems procis neģenerēs un neuztvers. Viņš rakstīs vai lasīs jau gatavu apstrādātu signāla digitālās vērtības, tas pats ar Step signālu procis ierakstīs loģikā attiecīgos ciparus un tas arī viss pārējo izdarīs loģika, tākā procis ir kā datu bīdītājs, pārbaudītājs, tākā visu melno darbu veiks loģika, un to sauc par īsto parallēlo procesēšanu. 
jaunajā CIII mikrenē proči skries ar 100Mhz ierobežojums varētu būt Flash un SDRAM atmiņas ātrums ja vārēs tad es Sdram vispār neizmantošu jo fpga ir iekšējais RAM kas ir daudz ātrāks nekā ārējais, vienīgi viņa ir maz.

un lai šito uztaisītu man vaig manu jauno CIII plati kur ir USB FTDI čips un Flash atmiņa + IO vadi virs 50 gabaliem bīja šitai test platei, bet tā īstajai platei būtu pie 120 IO (pietiek visam un paliek vēl pāri)

----------


## dmd

when everything else fails - throw another processor in. 
jā, tā ir tāda mūsdienu pieeja, līkas programmas kompensēt ar skaitļošanas jaudu. 

tātad tava konstrukcija sastāv no:
1 pc
2 cikloni (15$ gab?)
plates (??$ gab)
patērētais laiks (~2Ls/h) >500Ls

un tajā pašā laikā, tev liekas, ka teiksim otrais vai trešais pentiums (~5Ls, bet lielākoties visi ir laimīgi, ka tiek no tās kastes vaļā tāpat) ir drausmīgi pārmaksāts.

btw epi, paskaties privātās ziņas  ::

----------


## Andrejs

EPI, beidz maldināt sevi un citus - nekas no minetā "krutā stanoka" ar fpegām un murgainiem algoritmiem Tev nesanāks! Lai iegrieztu vītni  - iepriekšējos dažus 100 gadus tīri labi iztika bez CNC. Ja gribi cnc, tad uztaisi vienkāršu, parastu aparātu un tad modernizē, ja vari. Daudz interesanta uzzināsi. Kāpēc normālus aparātus inženieru kolektīvi ( protams, ne tik progresīvi  :: , kā Tu ) vairākus gadus projektē un pilnveido?? 
Manuprāt, Tev ir nopietnas problēmas ar realitātes uztveršanu. Lai kautko sakarīgu uztaisītu nepietiek ar internetā  virspusīgi sagrābstītām frāzēm - ir vajadzīgas zināšnas un izpratne par notiekošo. 

JAUNAJĀ GADĀ IZDARI KAUTKO LĪDZ GALAM!!

Andrejs

----------


## Epis

> tātad tava konstrukcija sastāv no:
> 1 pc
> 2 cikloni (15$ gab?)
> plates (??$ gab)
> patērētais laiks (~2Ls/h) >500Ls
> 
> un tajā pašā laikā, tev liekas, ka teiksim otrais vai trešais pentiums (~5Ls, bet lielākoties visi ir laimīgi, ka tiek no tās kastes vaļā tāpat) ir drausmīgi pārmaksāts.


 IR tā kad kontrukcija sastāv no: 

1 ciklons (15$) (tur irkšā 2 procesori + loģika) 
1 plate kopā ar ciklonu un visiem štruntiem 30-35Ls + kāda papild plate ja vaidzēs priekš IO signlālu pielāgošanas (pāris LS) jo to var uz parastā maketplates uzlodēt.

Kompjūters nav sarakstā jo tas domāts tikai programmējamā koda izstrādei un pēc plates ieprogrammēšanai tai dators nav vajadzīgs un plate varēs bez kompja strādāt kautvai 10 gadus tākā dators iekārtai nav vajadzīgs.

patērētais laiks 0Ls jo tas ir mans brīvais laiks, kuru pirms kādiem 3 gadiem es aizpildīju spēlējot datorspēles un protams ka man apnika jo pārāk viegli, tādēļ vaidzēja kautko grūtāku un reālāku ko var arī izmantot dzīvē un tā tas arī viss sākās un ilgst jau vairāk kā 3 gadus, un tas ir daudz intresantāk nekā spēlēt kompi (šad tad es kompi tomēr uzspēlēju, bet ļoti reti, un katr reiz paliek ar vien neintresantāk). 
Varbūt kādu dienu šī brīvā laika pavadīšana pāries profesionālā līmenī kad ar to pelnīšu naudu, kad tas notiks es protams nezinu jo nākotni pareģot es nemāku.

----------


## Mosfet

Epi tu padomā ko esi uzrakstijis. Tas viss neizklausās pēc kaut kā normāla ko tu varētu pavilkt.
Rūpnieciskos metālapstrādes darbgaldus kurus man nākas paŗbūvēt( piem virpa garums 2000mm atālums starp centriem 1500mm svars ap  2tonnas, centrāla piedziņas jauda ap 10kw, vadībai un palīgoperācijām ir ap 3-12 stepperi vai servomotori) tiek aprīkots ar Pentium III tipa centrālo proci kas sagatavo datus priekš motoru vadības platēm izmatojot paralēlo interfeissu.Motora vadības plates satur vai nu PIC vai CPLD( Altera Max) neko tur jaudīgāku nevajag. Centrālo piedzīnu komandē DSP kas saņem info no centrāla procesora. Un ta visa rezultātā iegustam virpu kurai max apgr ap 3000 padeves diapazons 0,02-4,5 mm uz apgr, var uzgriezt vītni 3 veida ar soli no 0,5-96 mm metriskai. Un vēl 3 gadu garantiju uz elektroniku dod.
A tev kas ? Tavs mūzš būs par īsu lai uztaisītu tavu "projektu"

----------


## a_masiks

Epi - tavs variants IR 3. Apsaukā kā gribi, ķēmojies kā gribi -  tas ir trešais.
Atsevišķs specializēts mikrodators, kuram būs sava, unikāla komandu sistēma uz kuru tev nāskies pārtranslēt G kodu.
Lai tavs iedomātais sūds /kāpēc sūds - es augstāk par 3 varinatu jau izteicos/ strādātu -  tev būs nepieciešama vismaz gigabaita atmiņa pavisam sīkas detaļas izvirpošanai. Vai arī nepārtraukti pieslēgts dārgais un nīstais, nenormālu enerģiju patērējošais pīsis. Kāpēc?



> ieliekam programmā G-kodu un tad programma viņu dekodē un izrēķina visus paātrinājumus, laikus kas vaidzīgs lai to kodu izpildītu tikai šajā posmā reiķina vispārējās vērtības, ar vispārējām vērtībām es domāju to ka netiek reiķinātas katra motora soļa ātruma vērtība, tajā vietā tiek izrēķināts cik soļi motoram ir jāiet ar konkrētu ātrumu vai paātrinājumu (šeit ir smagas fizikas formulas), kad dators ir to izrēķinājis tad sūta to uz fpga plati caur USB FTDI čipu fpga platei, tākā šāda tipa kods ir faktiski tās pašas G-komandas tikai jau ar nelielu pirmsapstrādi tad sūtāmais fails ir ļoti mazs


 Izrēķini, lūdzams, pēc SAVA algoritma - cik baitus aizņems piemēram G-codes komanda  "G28"??? G-codē tā aizņem 3 baitus. Cik tev? /no tā tu uzzināsi cik reižu lielāks būs tavs sūtītais fails par G-codes failu/ Kāds vispār būs to datu formāts, kādu tu taisies sūtīt uz fpgu, tev vismaz ir kaut kāda koncepcija, ideja? Jebšu tu te zīmē ar pirkstiem debesīs un iztēlojies gaisa pilis pat bez sajēgas kas ir gaisa pils?

PS - normālākais variants būtu, ja tā fpega spētu saprast un operēt ar G-code. To Epis nespēs pavilkt. Varu saderēt, ka rezultātā, ja vispār palaidīs savu super-puper devaisu - degradēs savu C-III par prastu izpildes loģiku aļa manis aprakstītā 2 versija.

----------


## Velko

Vārdu sakot - tā ir brīvā laika pavadīšana. Bet hobijam patērēto naudu un laiku neskaita, tāpēc beidz murgot par to, cik tas ir lēti un izdevīgi.

Baigais kontrasts tev - vienā konstrukcijā supersmalkā ciklona plate un maketene. Silti iesaku apgūt plašu kodināšanas prasmi. Gan konstrukcija izskatīsies pabeigtāka, gan stabilāk strādās, gan vieglāk salodēt. IMHO uz maketenes lodēt kautko, kur ir vairāk par dažām detaļām ir briesmīgs čakars. Maketeni izmantot kautkam vairāk, kā pagaidu/testa konstrukcijai - tas nav nopietni.

----------


## Epis

> Bet hobijam patērēto naudu un laiku neskaita, tāpēc beidz murgot par to, cik tas ir lēti un izdevīgi.


 Priekš manis tas ir lēti un izdevīgi, priekš citiem es nezinu, tas jādomā katram pašam. 

Es te netaisos taisīt Tonām smagu virpu, man savām vajadzībām pietiek ar līdz 100Kg agregātu + neliela jauda, ar to man pietiek lai uztaisītu to ko man vaig, vienīgi es gribu lai mazajam agregātam būtu lielo agregātu elektronika un intelekts lai tas būtu īsts autonoms robots, apmēram tā ieliec ieksā matreālu un pēc stundas,divām atnāc savāc sīkās detaļas  ::  un tādu līmeni sasniegt nevar ar paratajām LTP porta kompja programmam.

kādēļ visi joprojām uzskata mazās lētās fpga mikrenes par kautkādām smalkajām super tehnoloģijām, tādos vārdos var saukt dārgā gala patiešām super ātrās + nenormāli loģiski ietilpūgās ar visādiem bonusiem integrētās fpga kā Virtex5 un stratix III, es tač tādas neizmantoju.

----------


## GuntisK

Ja tev to virpu vajag tikai lai iegrieztu vītni, varbūt nav vērts? Cik zinu rūpniecībā CNC virpas reti kad lieto lai iegrieztu parastās vītnes, biežāk sarežģītas konfigurācijas vītnes. Pats redzēju kā taisa šarnīrus vienā uzņēmumā-tur galā vajag uzgriezt vītni, pati detaļa tiek taisīta uz cnc virpas, a vītni uzgriež uz speciāla automāta. Ir tāda metode kā "накатка", tādā veidā iegūtās vītnes ir labākas tādā ziņā, ka metāla iekšējā struktūra tiek mazāk bojāta nekā apvirpojot, rezultātā tā mazak rūsē, ir izturīgāka. 
Tiktu labāk galā ar vienkāršas detaļas izgatavošanu, nevis uzreiz ķertos pie sērijveida "robota-ražotāja". Starp citu-kur palika tā tava virpa/frēze par kuru kādreiz lielījies? Ir kaut kas vēl dzīvs palicis?

----------


## Epis

> Starp citu-kur palika tā tava virpa/frēze par kuru kādreiz lielījies? Ir kaut kas vēl dzīvs palicis?


 tai mazajai Frēzei/virpai  alumīnija X,Y galds ir beigts vairs neslīd jo es viņu ar savu 1,5Kw AC motoru piebeidzu tik lielām slodzēm viņš nebīj domāts (es protams domāju ka bīj) viss pārējais vēl ir vesels un to begto x,y galdu es varu aizietot ar jauno sliežu x,y, vienīgi tiem klāt nav motoru un vītnes (pāris dienas lai pieskrūvētu) tākā viss ir bet kamēr nebūs motion kontrolliera tikmēr es neko tajā laukā nedarīšu.

Runājot par to ka kautko var iemācītes darbojoties ar lielajām iekārtām tās ir pilnīgas muļķības tieši otrādies uz lielajām iekārtām mācoties var sevi satraumēt un par kropli palikt, jo kas notiks tad ja kautkas sāks lidot pa gaisu (man tā ir bījis) lielai iekārtai viss ir lies un smags manai mazajai spēļmantai pa 1000$ vis bīj mazs un viegls tādēļ  es te vēl sēžu un rakstu, + fizikas likumi visām iekārtām ir vienādi, un uz mazās iekārtas var labāk redzēt kas notiek kritiskās pārslodzēs, + kāda ir lielu vibrāciju ietekme (ka visa virpa burtiski kratās, uz lielās tonīgās iekārtas to jūs neredzēsiet un ja kautkas tāds sāksies ar vairāku tonu iekārtu es ieteiktu mukt cik ātri vien var !! kamēr vēl dzīvs   ::  + es ar mazo iekārtu varu vērot kā lūzt instrmenti un notiek citi procesi kad viss iet pa gaisu  ::

----------


## dmd

nu neskrien tās mašīnas tā apkārt. protams ir jau kautkāds iemesls, kāpec tam pašam mazatrollim (kura bildi ieliku) ir bruņustikls, bet tas nebūs tāpec, ka detaļas lidotu pa gaisu lodes atrumā (infact pēc nozāģēšanas tās detaļas smuki sakrita kaudzītē). tāpatās arī automātiskai padevei interfeiss bija izpildīts ar diviem vadiņiem un pāris galaslēdžiem, vispār nekada kontroliera. 

tāpatās arī roland plēvesgriezējā ploterī (kas ir baigi smalka padarīšana īstenībā) viss galvenais smalkums ir mehānikā, ne elektronikā.

----------


## Vikings

> Runājot par to ka kautko var iemācītes darbojoties ar lielajām iekārtām tās ir pilnīgas muļķības tieši otrādies uz lielajām iekārtām mācoties var sevi satraumēt un par kropli palikt


 Ko tu tur murgo! Neviens tevi tāpat nelaidīs pie lielās mašīnas ja neredzēs, ka saproti ko dari. Sorry, esmu tiešs tava teksta nepatiesības apliecinājums - divus gadus strādājot pie dažādu iekārtu remonta, pārbūves un progammēšanas esmu samācījies ļoti ļoti daudz ko nekādā veidā nebūtu iemācījies lasot ko kāds saspamojis netā un pētot kaut kādas bildes. Tā ir iespēja katru dienu mācīties iekārtu uzbūvi un par to vēl piemaksā. Šoreiz tu tiešām izspļāvi pilnīgu murgu.
Lielajām iekārtām tāpat ir drošības vārti un citas drošības sistēmas, kas domātas cilvēka aizsardzībai. Neviens neliek tev pirkstus bāzt pie virpas griežņa vai strādāt bez brillēm. Kās saka - sargā sevi un Dievs tevi sargās.

----------


## Mosfet

Epitu nu sāc rakstīt galīgas mulķības
1. Idiots savainosies gan uz lielas gan uz mazas, tas nu tā. No taviem vārdien iznāk ka tu nekad mūžā neesi virpojis. Uz normālas virpas nekas nevibrē un nekas nelūst pat idiotiem tas izdodas ar lielu piepūli. Vibrācija rodas uz visādām kropļu virpām ( piem ķiniešu vai arī lētām čehu) tāpēc viņas ir smagas un nepalīdzēs nekāds epoxy kompozīta materiāls. Ja tu zīnātu metālgriešanas pamatus tad vispār nerakstītu tādas muļķības.  Grāmatas tu negribi lasīt .Starp citu CNC tipa virpai pat nevar nolaust griezni, jo griešanas spēka momentu kontrolē.Un fizikas likumus tu arī negribi zināt. Aprēķini ciks liels spēks darbojas uz  virpu ja ta nogriež 1 mm2 metālu?Un padomā.
2.Tev tiešām pat nav inžiniera domāšāna -tu esi ekonomists un tur arī paliec.Tev gaismu ieslēdz divkodolu procis ar Windows 64 bitu operacijas sisteēmu, jo tavas smadzēnes nevar aptvert ka ir parasts slēdzis.To visu var teikt par tāviem eksperimentiem ar fpga. Tavi kodi ir neveikli un gari tu pat nemāki vai negribi PWM kodu uzrakstīt vienkārši.Tavs enkodera kods ir murgs.Necenties izgudrot velosipēdu. Citādi būsi Otto................ 
Tev pat derētu izpētīt LPT porti pirms sāc rakstīt


P.S Viking ja tev interesē tās grāmatas iedod e-mailu

----------


## Velko

> Idiots savainosies gan uz lielas gan uz mazas, tas nu tā.


 Hmm... tagad nezinu ko par sevi domāt  ::  Ir gadījies. Tiesa, tā bija manuālā koka virpa, kur ar roku jātur kaltiņš. Norāvos ar kalta spalu pa zobiem, ka maz nelikās  ::  

Bet šitais gan man patika:



> es ar mazo iekārtu varu vērot kā lūzt instrmenti un notiek citi procesi kad viss iet pa gaisu


 Nu ko, arī sava veida izklaide  ::

----------


## 0xDEAD BEEF

Nu par sito temu iespamosu, ka ari pats loti lenam atistu cnc projketu, un dotaja mirkli esmu nonacis pie secinajuma, ka velos izmantot kordinatentisch x un z asij un y asi izmantosu stacionaro urbjmasinu.
runajot par vadibu, tad esmu nolemis, ka labakais risinajums butu pic mikrokontrolieris, kursh ar usb ir pieslegts pie datora. Talak pic seriali sutitu komandas uz apakspiciem, kas katrs vadis savu solu motoru. TB - uz katru solu motoru viens pics un vel galvenais pics, kursh nodroshina komunikaciju ar datoru, izmantojot usb.
Kapec izvelos daudz mazu picus, nevis vienu ar daudz kajam? Es izdomaju, ka forshak butu 4 vadi uz katru solu motoru. Jauda un signals. Savadak vajag 4trus jaudas vadus, bet tiem bus jabut resniem vadiem un kaut ka tas neliekas vienkarshi. Piedevam sadu sistemu butu vienkarshak izkjert no kludam, jo viss bus sadalits blokos.

Protams... nesmu drosh, ka kadreiz to izdarishu, bet tie kordinatu galdi tiesham nav dargi...  :: 
nu tas ta...  :: 

runajot par epi... es reizem nesaprotu, vai vins tiesam to kaut ko ir izdarijis (ar tiem fpga un tada gara), vai ari vins ir kaut kads kertais, kurs no interneta piesavinas citu cilveku darbu.. nu ne - tomer ticesu, ka ta nav!  :: 

Vienkarsi laikam dzeks ir diezgan lidzigs man (lieli sapni), bet zeme caursisana (atri pamet vienu un keras pie kaut ka cita)

Beefs

----------


## Epis

> vai ari vins ir kaut kads kertais, kurs no interneta piesavinas citu cilveku darbu.. nu ne - tomer ticesu, ka ta nav!


 ķertais varbūt, jo ar ekstremālajiem sportaveidiem veselie nenodarbojās, bet par citu cilvēku darbu piesavināšanos tas labi ka tu beef tā nedomā, jo tā nav, protams, ka internetā mētājās visādi projekti, koda gabali bet lielākā daļa no tiem nav izmantojami patiešo, un neder, jo katram ir sava unikālā sitācija un vajadzības tākā labākais ko no tās brīvās informācijas var tas ir pamācītes un apskatītes kā cititi risina līdzīgas problēmas.




> runajot par vadibu, tad esmu nolemis, ka labakais risinajums butu pic mikrokontrolieris, kursh ar usb ir pieslegts pie datora. Talak pic seriali sutitu komandas uz apakspiciem, kas katrs vadis savu solu motoru. TB - uz katru solu motoru viens pics un vel galvenais pics, kursh nodroshina komunikaciju ar datoru, izmantojot usb.


 Tu esi jau rēķinājis un dziļāk domājis tajā virzienā ?? Kādus Picus izmantosi, jaunos 32bit, vai Pic24 (16bit). 
Es jau uzreiz redzu problēmu ar USB (kā man), jo tādas CNC progas, kas caur USB kautko sūta man liekās ka nav, tākā būs pašam kautkas jāraksta arī tajā laukā.




> Starp citu CNC tipa virpai pat nevar nolaust griezni, jo griešanas spēka momentu kontrolē.Un fizikas likumus tu arī negribi zināt. Aprēķini ciks liels spēks darbojas uz virpu ja ta nogriež 1 mm2 metālu?Un padomā.


 ja kas es esu rēķinājis arī tos spēkus pēc kautkādām formulām un paraug aprēķiniem,kurus google atradu un balstoties uz tiem rezultātiem es arī pēctam modelēju savu jauno agregātu un veicu spēka aprēķinus savam modelim iekš FEA softa, tākā Es varu teikt ka mana jaunās iekārtas konstrukcija ir pārbaudīta.
 es šito jau bīju vairākas reizes pirmstam teicis, tākā atkal sanāk visu atkārtot vēlreiz.

----------


## GuntisK

> Es jau uzreiz redzu problēmu ar USB (kā man), jo tādas CNC progas, kas caur USB kautko sūta man liekās ka nav, tākā būs pašam kautkas jāraksta arī tajā laukā.


 Ir, ir tādas progas, bet viņas ir domātas "saviem" kontrolieriem. Šitas variants ar USB būtu labs ja CNC klāt slēdz laptopu (jaunajiem vairs ne LPT,ne COM). A tā- parasto PC pieslēdzi klāt kontrolierim caur LPT un rukā vesels. Un kāpēc visiem tas USB tā patīk?   ::

----------


## 0xDEAD BEEF

> Ir, ir tādas progas, bet viņas ir domātas "saviem" kontrolieriem. Šitas variants ar USB būtu labs ja CNC klāt slēdz laptopu (jaunajiem vairs ne LPT,ne COM). A tā- parasto PC pieslēdzi klāt kontrolierim caur LPT un rukā vesels. Un kāpēc visiem tas USB tā patīk?


 Ja ir programas, kas izdod g-koda lauka, tad nav gruti uzrakstit programu-lasitaju, kas lasa failu un suta pa usb da vienalga kada formata. Ja nav sadas programas, tad var izmantot usb-com piemeru no microchipa. TB - pic (pic18f4450) izliekas par com portu un dators sledzas pie com porta, bet pics talak jau vai nu suta atpakal datus uz citu usb endpointu (aplikacija) vai ari pats interprete g-kodu un suta uz slave piciem izpildit.

EPI - kaadi 32 bit?! Tas nav vajadzigs!  ::  18mitas serijas piki griezhas ar atrumu 12 miljoni operaciju sekunde. solu motors -labi ja- griezisies ar 50 rps, kas ir 50 x 180 = mazak par tukstoti solju sekunde. Man uz katru soli sanak 12 000 operaciju. tas ir DAFIGA!  :: 

Piedevam esmu parliecinats, ka iesaceja cnc abak but vienkarsam - jo primitivaks, jo labaks, jo paliekot sarezgitakam krietni samazinas iespeja, ka es to kadreiz izdarisu. Un ir vel viens aspekts - jo letaks, jo labaks, jo ja nu sagribas savu cnc tirgot ari citiem cilvekiem (tas butu tikai logiski, jo ir ieguldits darbs izveide), tad uz super tech es stabili nevaru pretendet, tapec atliek tikai low-end letas cenas gals!

Gunti - tieshi ta! velos vadit ar USB, jo nevelos stacionaro datoru. USB ir ari daudzi citi plusi, kas man loti patik. Plug n play, mazs konektors, popularitate un 5v barosanas spriegums!  :: 

Beefs

----------


## marisviens

Man nav speeka izlasiit visu, kas augstaak sarakstiits, bet CNC, kuram shobriid blakus seezju, datus suuta caur COM portu. Pa starpu tam ir jasciks - smadzene, aiz taa kaste, kurai LPT ieeja un un kuraa motoru vadiiba notiek. Tad luuk, shajaa smadzenee staav iekshaa gabals no datora. Tur ir sim modulis un veel viskautkas :: . Ja ir nevaldaama interese, varu nofocjeet. Jasciks lapas viduu redzams, uz programmu graamatinjaam virsuu: http://www.cnc-router-routers.com/html/ ... frase.html

----------


## Epis

Usb ir ļoti labs variants, vienīgi ar tām CNC progām uz USB ir tā ka es nēsu tādu vēl redzējis. ja kāds zin tad informējat arī mani.



> Un kāpēc visiem tas USB tā patīk?


 Tādēļ kad LTP un COM porti pamazām izzūd, es savam jaunajam kompim mātesplati ilgi meklēju kur būtu gan LTP, gan COM ports, agrāk tas vissur bīj kā standarts a tagat reka vairs nav,
USB FTDI čipi ir tīri labi lai pārtaisītu USB par virtuālo COM, + USB ir ērtāk izmantot jo no USB porta arī var strāvu elektronikas darbināšanai, piemēram mana jaunā fpga plate ņems strāvu no USB porta + arī iespēja vainu padot vai arī ņemt 5V no ārējās elektronikas, kas spraudīsies klāt pie IO konektoriem, tākā USB ir ļoti ērts + piejams vissiem kompjiem lielā skaitā, un tuvākos 10 gadus nekas īpaši daudz nemainīsies.
Bet CNC sakarā USB komunikācija īsti neder jo caur USB nevar nosūtīt Step/dir signālus, caur USB var nosūtīt datu paketes kuras var saturēt informāciju par STEP/dir signāliem un tad padomājiet cik lielam jābūt datu pārraides ātrumam lai normāli sūtītu šos signālus 3 asīm ar LTP porta max frekvenci kādi 40Khz (vai Ksteps/s), labi parēķināsim, ja 1 step signāla ātrumam izmanto 16bit ciparu tad 40Kstepi sanāk 6,4Mbiti informācijas 1 sekundē tikai pliki dati par 1ass kustību 1 sekundē līdz ar to full-speed USB ar 12 Mbps jau atkrīt un atliek tikai Hi-Speed USB 480 Mbps kas jau varētu derēt, ir tā ka šitie hi-speed USB čipi maksā tīri dārgi virs 14$, Es digikeyā neko lētāk par CY7C68013A 14,4$ atrast īsi nevaru, ja kāds zin kur lētāk tad sakat mani tas intresē.
Lēti ir tikai tie FTDI čipi argusā pa 3ls gabalā UST to COM  ::

----------


## 0xDEAD BEEF

Nemuldi!  :: 

4 asu kustibu var viegli iekodet 1na baita. attiecigi katrs bitu paris nozime, ko dotaja laika momenta jadara cnc aparatam. 00 - stavet uz vietas. 01 - greizties viena virziena. 10 - greizties otra virziena. 11 - hold.

pat pie lenaka usb hid var dabut 64 KB/s. Tas nozime 64 000 solu katram motoram. Tev liekas, ka ar to nepietiek?  ::  Un vel pari paliek!  :: 
Beefs

----------


## GuntisK

Ok,ok! Pieņemsim -USB liels pluss ir ka var čik-čik ātri atslēgt, tikpat ātri pieslēgt, mazi štekeri u.t.t. Bet! Manā izpratnē CNC ir jābūt stacionāram (tas pats printeris var tikt uzskatīts par speciālo cnc-lapu apdrukāšanai  ::  ), Tu taču neskraidi apkārt ar printeri, nevieno to štekeri no USB ligzdas simts un vienu reizi dienā. Tāpat i ar visām tām frēzēm un mikro virpām (tagad runa iet tikai par cnc!) -noliki uz galda, lai viņa tur stāv visu laiku pievienota pie centrālā kompja uz kura ir CADs un CNC softs kā piem. MACH un aiziet. Tb-LPT sākuma eksperimentiem. (ar to es nedomāju atkāpšanos "gadsimtu iepriekš"-pašam patīk viss jaunais). Tā ka Epi- sākumā ņem un uztaisi jēdzīgus draiverus (iemācies plates kodināt, ar padomiem palīdzēsim), palaid viņus darbībā (pārbaudi visādus CNC softus kurus vari dabūt), liec uz paša aparāta kas Tev ir (virpa/frēze?) padzenā ar dažādām testa programmām (G-code) UN TIKAI TAD sāc domāt par FPGA (uzlabošana, etc.etc.). Tikai pēc šitās shēmas Tev kaut kas izdosies! Tici man!  (Piemēram Es saviem nākamajiem eksperimentiem, Vikingam jau aizsacīju lai no DigiKey atsūta trīs draiveru mikroshēmas TA8435 (ap 5$) kura uztur "stepošanu" līdz pat 1/8 mikrosolim.  http://www.kosmodrom.com.ua/data/cncste ... /shema.jpg)

----------


## Epis

Nu ja viss būtu tik vienkārši tad es jau tā darītu, tas ka tu aizsūtīsi plikas 2bitu kombinācijas īsti nelīdzēs, jo motoram tač ir jāzin ne tikai ka viņam jānoiet viens solis bet vēl ar kādu ātrumu viņam tas solis jāiet !! un katram motora solim ir savs ātrums. 
Verbūt ka es to tavu metodī īsti neizprotu, pasaki man kā tu noteiksi to motora ātrumu no 2 bitiem ??

----------


## marisviens

Nekas jau aatri nav jaaizsleedz un jaaiesleedz. Uz paarejas kasti jaaizsuuta kas liidziigs G kodam, kaste to saprot un iedarbina CNC motorus kaa vajag. Pa sho laiku vads ir briivs un pa to var suutiit visu, kas CNC notiek atpakalj uz datoru + avaarijas stopeeshana ut.t.t.

----------


## Velko

> labi parēķināsim, ja 1 step signāla ātrumam izmanto 16bit ciparu tad 40Kstepi sanāk 6,4Mbiti


 Rēķināt iemācies!!! 40*16=640, nevis 6400. Līdz ar to - tas ir tikai 0.64 Mbit/s. Pagaidām nevajag neko vairāk kā USB Low Speed. Uztaisam šausmīgu agregātu ar 8 asīm un vēl joprojām ar Full Speed pilnībā pietiek.

----------


## Epis

ļaikam kļūdījo par 1 nulli, bet vienalga tie 12mbps full speed usb nenorāda datu raidīšanas ātrumu, bet iespējamais datu pārraidīsānas apjoms ir daudz daudz mazāks kā manam FT245R čipam MAX ir 8Mbiti/s 9ar speciālo direct driveri un ar parasto Virtual com port draiveri ir 2,4Mb/s (ko es izmantošu). 
Itkā kautkas var sanākt tikai jātcerās ka pie tiem 16 ātruma bitiem vaidzēs vēl pielikt klāt kādus 8 bitus kas norāda kam tā infomrācija tiek sūtīta (apmēram tā ka dati jāsūta pciņā un 8 biti norādīs cik tā paka ir liela un kas tur atrodās, savādāk būs liels bardaks). 

Teorētiski šāda sitla programmu kas sūta datus ir iespējams uztaisīt fiksi (manā programmā vaig ielikt tikai 1 formulu, kas rēķina katra soļa ātrumu un prorgamma ir gatava!)
kā paliek ar tām gatavajām programmām kas sūta Datus pa Com,USB portiem ??

----------


## Epis

Nupat atradu vienu progu http://www.usbcnc.com/ 
step signālus dod līdz 25Khz un 4 asīm (3 lineārās 4. rotējošā)
izmanto parasto Com pora emulātoru tākā vairāk par 300Kbytes/s datus nosūtīt nevar, un plates galā stāv PIC18 ar iekšējo USB recieveri.
tajā progā viņiem nav nekādu motion kontrollieru  ::  jāapskatās vēl moš kautkur būs.

----------


## Vikings

> kā paliek ar tām gatavajām programmām kas sūta Datus pa Com,USB portiem


 Ir tāda programma Flashcut CNC. Tā it kā sūtot pa COMu un USB.



> tas ka tu aizsūtīsi plikas 2bitu kombinācijas īsti nelīdzēs, jo motoram tač ir jāzin ne tikai ka viņam jānoiet viens solis bet vēl ar kādu ātrumu viņam tas solis jāiet !


 A kur problēma izmērīt laiku starp divām šīm te kombinācijām? Pats taču teicies esot taisījis, ka draiveris mēra STEP signāla periodu. Vairāk gan tas būtu attiecīnāms uz servo motoriem, lai precīzāk pieregulētu spriegumu arī atkarībā no ātruma ne tikai pozīcijas kļūdas. Soļu motoram taču vienkārši jāatstrādā padotais STEP signāls. Pārējo rēķina CNC vadības programma - tik ļoti nīstais PC.

----------


## Epis

USB datus nesūta tākā LTP ports tur dati tiek sūtīti paciņās ar pārtraukummiem līdz ar to nevar izveidot tādu Step signālu kur var nomērīt laiku starp 1, 0, 1 līdz ar to ir jāsūta ātrums binārajā. 

šeit viena tāda moderni progrogresīva programma http://www.techlf.com/cpu4bu.php3 tur šitā plate 233$ + programma lai datus uz plati nosūtītu vēl 277$ (dārgākā viņu USB-step/dir plate bīj pa 570$ un šitā plate tikai ģenerē Step/dir signālus no USB saņemtiem datiem (ātrums 50Ksps) un viņi izmanto 4 asīm Lineāro interpolātoru + 2 asis Circular interpolātoru tātad no tā izriet ka viņi nesūta katra soļa datus bet kā es Komandas tipa datus un tad viņiem plates 32bit RISC procis rēķina tās Step vērtības  ::  (tā es arī gribu) 
Un viņiem tur nav nekāda Motion kontroliera  ::

----------


## Vikings

> USB datus nesūta tākā LTP ports tur dati tiek sūtīti paciņās ar pārtraukummiem


 A kur problēma mērīt laiku starp paciņām ar soļa datiem, neskaitot paciņas, kurās nav datu?

----------


## a_masiks

1) USB ->COM   portam var iestatīt maksimālo un minimālo datu pakas izmēru, latencijas laikus, minimālos rakstīšanas un lasīšanas laikus. Man bija kaut kādas problēmas ar atsevišķu telefonu softošanu tāpēc paspēlējoties ar šiem parametriem varēja iegūt vēlamo rezultātu. FTDI čipiem vispār nāk par velti šamo mājas lapā konfigurācijas softiņš, kurš atļauj pieprasīt FTDI čipam 3/4 no USB rūtera 5V barošanas strāvas un vēl kaut kādus tur inčīgus setiingus pamainīt. Tas ka nemāki strādāt ar USB nenozīmē ka pats USB nemāk strādāt. Ēzopa lapsa ar zaļajām vīnogām atradusies, zin... jā, jā -  skābas un zaļas ir tās vīnogas... atstāj labāk tās citiem, kas māk aizsniegt...  :: ))))
2) vēl joprojām nesaskatu iemeslu - kāpēc būtu jāsūta motoram speciāla soļa pārslēgšanās ātruma komanda??? Un kurā galā to tu viņam iestūķēsi? Gultņos vai? Tak lai kontrolieris pats pierēķina pēc soļu padošanas biežuma to ātrumu, ja tas tik būtiski un piekoriģē barošanas spriegumu.
Lai gan... ja ir vēlme sakarināt uz datu pakas dafiga lieku informāciju - var būt ir vērts skatītes 1Gb lana virzienā? Katru komandu soļa izpildei varēsi attālināti veikt un apstiprināt ar e-parakstu? Kruta - neviens svešais nespēs pat par elementāro solīti izkustināt tavu virpu...

PS - var būt tiec galā ar LĒNAJIEM procesiem - temperatūras vadību un šīs vadības atgriezeniskajām saitēm??? Šķiet tūlīt tur ar ar 32bitu procesoru būs par maz - dualkori vaidzēs....

PPS - LPT ports nemaz tik lēns nav... standart draiveri nav ātri, tas tiesa. Bet hakeru tasītie COM porta emulācijas softiņi uz LPT porta mierīgi rukā ar ātrumu virs 1Mbps. Resp - virknes kodu LPT portam var uzbliezt virs 1Mbps... IMHO paralēlais būs pie 1MBps. Par šo tēmu meklēt Dejana flašieri caur LPT portu DCT3 paaudzes Nokijām.

----------


## Epis

Es apskatījos FTDI čipiem ir tas Bitbang režīms un tur ir softa dariveri, bet tāpat lai to izmantotu man būtu ilgi jāčakarējās.

vieglāk būtu sūtīt Pa USB tos ātruma datus binārajā 16bitos tad mazāk būtu jādomā par laika intervēliem un kas zin varbūt ka varētu izmantot progu kas taisīta uz tās pašas VisualC# vides kur programmas taisīt ir ļoti viegli.
bet tāpat tur nekāds motion kontrollieris uz kmpja nesanāk.

----------


## Epis

Viss kas ir jārēķina tādam lineārās trajektorijas ģenerātoram ir šī viena formula (manā gadījumā) 
vai ta tas ir tik matemātiski smags darbs ka tas ir jādara kompim un to mikrene nevar izdarīt??
[attachment=0:34c65gb1]Accel_Time.JPG[/attachment:34c65gb1]
apļa gadījumā ir vairāk formulu, bet tas arī nav nekas kritisks, un neiespējams, sanāk ka dēļ šīm pāris formulām ir jāizmanto vesels dators   ::  
Varbūt ka jāuzraksta C kodā tā formula (ar 16bit cipariem) un jāapskatās cik ātri (instrukcijas) vaidzēs Atmegai, salīdzinājumā ar ARM7 (uz IAR kickstart progas), un manējo Nios II proci ( 8bit picu es neskatīšos jo man viņi nepatīk)

----------


## Vikings

Epi, ja tu padomātu kas tas paātrinājums vispār tāds ir tad tā formula ļoti, ļoti novienkāršosies un nevajadzēs ne kāpināt, ne sakni vilkt, ne dalīt.

----------


## a_masiks

Formula ieper. Nu ne tas vien ir sameklējams internetā, vai fizikas mācību grāmatā. Bet es līdz šim nesaprotu šīs formulas pielietojumu CNC darba galdā. Taisies šo formulu izdrukāt un uzlīmēt virsū vadības blokam? Vot pāris vārdos - kā praktiski izpaudīsies šīs formulas aprēķinu rezultāts un kur to liksi - tu vari paskaidrot?

----------


## 0xDEAD BEEF

Es nedomāju, ka iesācēju projektam būtu jāuztraucas par ātrumu. Viss reducējas uz laiks pret pozīciju. Mērķis nav komandēt motorus griezties dažādos ātrumos, lai sasniegtu vēlamo pozīciju laika momentā, bet gan izpildīt nākamo komandu tikai tad, kad dotā pozīcija ir sasniegta. Tas padara mazliet neprecīzāku griezumu, bet ievērojami samazina sarežģītību.

piemēram, uzzīmēt līniju garums 8 platums 4. Ir divi veidi, kā to darīt
a) motors X griežas ar ātrumu 1, motors Y griežas ar ātrumu 0.5. Pie šādas formulas jāgriež ir 8 laika vienības. Problēma ir tāda, ka mums tāpatās ir jāpārliecinās, ka pēc 4 laika vienībām motors X atrodas 4, bet motors Y 2.
b) sadalīt darbu laika intervālos -
laiks       1 2 3 4 5 6 7 8
motors x 1 1 1 1 1 1 1 1
motors y 1 0 1 0 1 0 1 0

Es izvēlos izmantot variantu b. Tādā gadijumā pietiek ar nelielu buferi, kuru izpildītājs tukšo un prasa datoram sūtīt jaunus datus, kad buferis ir pustukš (cirkulārais buferis).

Ātrumu var regulēt 2vos veidos.
a) mikrokontrolieris izpilda nākamo soli tikai tad, kad tekošais ir izpildīts. Šī metode, manuprāt, ir tā, uz ko vajadzētu iet, bet vajag izdomāt veidu, kā noteikt to, kad soļu motors ir veicis soli, kā arī neaizmirst to, ka pārāk liels ātrums var radīt problēmas, kad vajg pēkšņi apstāties
b) kontrolieris pieņem, ka visi soļi tiek izpildīti precīzi, bet dators regulē ātrumu ar datiem. Šis risinājums ir bez feedbacka un palielina datu daudzumu, bet dod mazliet vairāk elastību attiecībā uz algoritma sarežģītību.

risinājums, kurā dators sagaida fēdbacku uz katru soli, manuprāt, nav apskatāms, dēļ nevajadzīgi lielās datora CPU noslodzes.
Beef

----------


## Epis

uzcepu VC# funkciju kas aprēķina 1 motora soļa ātrumu 


```
public double StepTime(double Xo, double Vo, double X, double a)
        {
            double T = (-Vo - Math.Sqrt((Vo*Vo) -2 * a * (Xo - X)))/a;
            return T;
        }
```

 varētu mēģināt tagat šito kodu iebāzt IAR kickstart pielabojot protams priekš 16bit int un moš jāmaina būs vēlkautkas.

šito formulu man vaig lai es dekodētu savā CNC soft uzceptajā programmā dabūtu īsto Step signāla ātrumu (no g-koda dekodētajiem un apstrādātajiem cipariem.) skatīties topikā "DIY fpga motoru kontrolieris"

laikam es tajā topikā nēsu ielicis pēdējo CNC softa versijas kodu, es nupat apskatījos to savu kodu un man tur ir vesels saraksts ar formulām + tagat vēl šitā nāk klāt (tīri smukumam).

----------


## a_masiks

Kas tavā izpratnē ir "step signāla ātrums"?

----------


## Epis

ieliku VC# kodu savai programmai tajā DIY fpga motoru kontrollieris topikā  varat apskatīties kādi signāli tiek ģenerēti un sūtīti fpga mikrenei un tad mikrene ar šito vienu formulu varēs izrēķināt soļa ātrumu.
visas metodes(formulas) ir G01instruction.cs failā

----------


## Vikings

Epi, tu saproti, kas ir paātrinājums?
Paātrinājums mēras metros/sekundē uz sekundi. Tas nozīmē par cik lielu ātrumu palielinās dotais ātrums pēc sekundes ilga paātrinājuma. Tagad padomā kā to izteikt formulā? beigu ātrums=sākuma ātrums+paātrinājums *paātrinājuma laiks. Tas ir viss, kas vajadzīgs. Tā ir lineāra funkcija, nav jēgas to bezjēdzīgi sarežģīt.



> (tīri smukumam)


 Nav smieklīgi.

Beef - manuprāt, b princips ir OK. Ātruma un pozīcijas kontroli vari uzticēt motora draiverim. Lai kompis dod soļa signālu un par pozīcijas un ātruma uzturēšanu lai rūpējas draiveris. Ja kaut kas nav kārtībā ar motoru vai draiveri lai draiveris informē kompi par nepatikšanām un lai kompis domā ko darīt tālāk (visdrīzāk jau izslēgt un padot trauksmes signālu).
Starp citu, Beef, tu stāstīji par to, ka māki uzprogrammēt porta draiverus uz kompja. Varbūt māki izveidot softu, kurš māk savākt uz hārdwārisko LPT portu sūtīto info un to tālāk apstrādāt sūtīšanai pa citiem portiem. Doma ir nodrošināt TCNC, Mch un citu LPT CNC programmu darbību, piemēram, uz portatīvajiem bez LPT porta.

----------


## 0xDEAD BEEF

NĒ!  ::  Netaisos kodēt porta draiverus! ;P
Es teicu (vai vismaz centos pateikt), ka ar PIC var viegli uztaisīt tādu iekārtu, kas izliekas par COM portu. Nu zinat taču tos USB - COM risinājumus? Tad nu lūk - PICiem ir vienkārš piemērs no microshipa, kurš emulē COM portu. Viss, kas man ir jaizdara, ir jāpārraksta tā daļa, kas sūta datus uz kaut kādu pica pinu, pret kodu, kas to visu parsē un apstrādā. Easy peasy. Par LPT gan šaubos, jo pieļauju, ka LPT - USB nav iekļauts HID draiveros, bet HVZ.

edit: nu tipa piespraud PIC pie datora un tev parādas found new hardware serial com port un tas patiesībā ir tas PIC.

Un es to epi točna reizēm nesaprotu.. liekas, ka viņš pats ar sevi sarunājas!  :: 
BTW - EPI - ja tu tik Ļoti gribi ņemties ar ātrumiem un paātrinājumiem, tad domāju, ka tavam projektam būtu labāk piemēroti servo motori.
Beefs

----------


## a_masiks

*0xDEAD BEEF & Vikings* 

Nu vispār tie FTDI USB ->COM un USB->LPT čipi jau tā arī strādā - veido virtuālus COM un LPT portus hārda sarakstā, un visas windoviskās progas bez lielām problēmām strādā ar šiem portiem. Ir pamanītas nelielas problēmasar atsevišķām senīlām win95, vai win98 progām, kuras izmanto kautt kādus tiešos taimingus un strāda nenormāli lēni caur to USB->COM... bet strādā! Lai cik tas dīvaini nebūtu bet man uz kompja stabilāk un pārliecinošak strādā USB->GPIB karte, nevis PCI slota karte GPIBam.




> domāju, ka tavam projektam būtu labāk piemēroti servo motori.


 Tieši tā laikam arī Epis domā. Jaudas un ātruma performance servikiem šamam šķiet pievilcīga. Tāpēc arī visa jeblja ar tām mikrenēm un pārējo herņu - aļa enkodieris uz pelītes optiskā sensora utt... Tik izskatās ka iefanojis par _"step signāla ātrums"_ - šamais direkt-step signālu pārrēķinās 38 papagailīšos un pēc tam atpakaļ. Ij priecāsies ka procesors noslogots pēc maksimuma. Ne par velti uz būtiskiem jautājumiem atbildēt nespēj... trollis taču ...  ::  ::  ::

----------


## GuntisK

> domāju, ka tavam projektam būtu labāk piemēroti servo motori.
> 			
> 		
> 
>  Tieši tā laikam arī Epis domā. Jaudas un ātruma performance servikiem šamam šķiet pievilcīga. Tāpēc arī visa jeblja ar tām mikrenēm un pārējo herņu - aļa enkodieris uz pelītes optiskā sensora utt...


 Nakui Epim servo, ja pat ar soļu motoru nevar tikt galā!   ::  Es jau raxtīju kā lai dara, lai būtu hotj kāds rezultāts. Abet šim vienmēr no sarežģītākā jāsāk.   ::

----------


## Vikings

> Ir pamanītas nelielas problēmasar atsevišķām senīlām win95, vai win98 progām


 Varbūt man ir līkas rokas vai pārāk maz rakos, bet piedzīvināt programmu, kuras pa tiešo sazinās caur porta adresēm lai viņa strādātu ar softisku LPT portu man neizdevās. Kad to visu noorganizēju caur PC hārdwārisko portu, viss sanāca OK.

----------


## 0xDEAD BEEF

Viking... negribu samelot, bet man liekas, ka USB LPT un COM portiem nevar pieklut izmantojot portu adreses (un runajot par portu adresem, tad to vispar var izdarit tikai lidz 98 windowsam). Tev jastrada ar LPT portu ka ar failu un jaizmanto specialas klases (atradisi msdn), kas lauj uzstadit statusu pinu vertibas. Runajot par piniem - tad loti retajam USB -> COM portam ir vairak pini, ka tikai RX, TX, kas ari ir par iemeslu tam, ka dazadas jocigas ierices (100 gadus vecais modems) nestrada ar usb-com

Beefs

----------


## a_masiks

*Vikings*
Grūti teikt. Man ar sākumā negāja. Tagad atkal broblēmu naf... ja nu vienīgi ar PL-2303 bāzēto pārveidotāju, softojot vienu konkrētu telefonu tipu kompis softa vidū bez vārda runas restartējas. Ar FTDI - viss čikiniekā. Kā arī prātā stāv hrestomātiskais gadījums ar samsungu V200, kuru ar vienu un to pašu softu, pat caur īsto COM portu, softojot zem win98 - dabūjam beigtu telefonu, bet zem win2000 vai Xp - viss notiek.

* 0xDEAD BEEF*



> Runajot par piniem - tad loti retajam USB -> COM portam ir vairak pini, ka tikai RX, TX, kas ari ir par iemeslu tam, ka dazadas jocigas ierices (100 gadus vecais modems) nestrada ar usb-com


 Boriss - ti ņe praff. (C) http://www.ftdichip.com/Documents/DataS ... 232r08.pdf
http://www.ftdichip.com/Products/FT8U232AM.htm
Resp - tikai retajam ķīniešu USB-COM adapterim ir IZMANTOTI visi pieejamie com adaptera gali. Bet viņi tomēr ir.

----------


## Epis

> Epi, tu saproti, kas ir paātrinājums?
> Paātrinājums mēras metros/sekundē uz sekundi. Tas nozīmē par cik lielu ātrumu palielinās dotais ātrums pēc sekundes ilga paātrinājuma. Tagad padomā kā to izteikt formulā? beigu ātrums=sākuma ātrums+paātrinājums *paātrinājuma laiks. Tas ir viss, kas vajadzīgs. Tā ir lineāra funkcija, nav jēgas to bezjēdzīgi sarežģīt.


 [attachment=0:t6btaw4a]Accel_Time_cipari.JPG[/attachment:t6btaw4a]
Tā jau ja uzliek ciparus uz grafika (laiks(x), matālums(y) ) līkne būs taisna itkā liekās ka viss ir lineāri bet man ir vajadzīga laika kordinātes starp diviem attāluma punktiem piemēram sākot ar 15metru līdz 20metram cik daudz paiet laiks (s), kā tu šito aprēķināsi ir tev kāda cita vienkāršāka formula par to manējo ar kvadrātsakni ??? 
ja ir tad es rēķināšu pēc tavejās formulas. 

Vakar mēģināju ielikt to forumulu IAR progā un nekas īsti negāja, kautkādu warning met visu laiku un skatoties ko viņš Asmā uzkompilēja tad tur nekādas instrukcijas nebīj problēma bīj ar to kvadrātsaknes vilkšanu IAR sqrt() funkcija bīja tikai Peldošajiem punktiem, bet integer šito nevilka tādēļ arī laikam nekas negāja, tālāk izdomāju pamēģināt uz Nios II IDE softa to pašu kodu un šeit kautkas jau strādāja un pēc šitāda kods, vienīgi atkal problēmar to kvadrātsakni viņa velkās no Float cipariem un labi šoreiz vismaz nokompilējās un debagot kodu varēja un tad es ieraudzīju ka no cipara 2481 izvilka kvadratsakni 8.829 tātad rezultāts ir nepareizs  ::  + es nekādīgies nevarēju atrast funkciju kas to Peldošo punktu pārtaisa atpakaļ par Integer datu tipu. 


```
  volatile int X = 250;
  volatile int Xo = 2;
  volatile int Vo = 1;
  volatile int A = 5;
 volatile  int T = 0;
  
 volatile float g= (Vo*Vo) -2 * A * (Xo - X);
 float G2 = __ieee754_sqrt(g);
//long G3= intf(G2); // nav biblotekas
  T = (-Vo + G2)/A;
```

 Izskatās ka pašam nāksies rakstīt kvadrātsaknes vilkšanas funkciju Int tipa cipariem ar Int rezultātu, 
binārajā to nav tik viegli izdarīt lai gan binārajā kvadrātsakni ir vieglāk vilkt nekā decimālajā, ja sanāks liels kods tad varbūt Jātaisa Kvadrātsaknes loģika.

----------


## a_masiks

> Tā jau ja uzliek ciparus uz grafika (laiks(x), matālums(y) ) līkne būs taisna itkā liekās ka viss ir lineāri bet man ir vajadzīga laika kordinātes starp diviem attāluma punktiem piemēram sākot ar 15metru līdz 20metram cik daudz paiet laiks (s), kā tu šito aprēķināsi ir tev kāda cita vienkāršāka formula par to manējo ar kvadrātsakni ???


 Paga, es pareizi sapratu -  mūsu Einšteins vēlas piekoriģēt laiku lineārās kustības izpildei? Ar ko tad ieregulēsi laika koordinātes? Ar lētu mikroviļņu krāsni? Es līdz šim brīdim neesmu sagaidījis atbildi - nahrena tās laika koordinātes vajadzīgas un kur tās tiks izmantotas? Nu, izņemot vienu grandiozo iemeslu - "tīri smukumam"(C)....

----------


## Velko

Un cik tad ir sqrt(31) kā integer? 5 vai 6? Arī ar floating point uzkrājas kļūda, bet apaļojot uz integer tā būs vēl lielāka.

Pie konstanta paātrinājuma, ātrums ir lineāra funkcija no laika, noietais attālums jau ir parabola. Vislabāk jau būtu izvairīties no šāda veida aprēķiniem.

Drusku galvas jaukšanai - neaizmirsti tādā gadījumā par "sīnusa loģiku"  ::  Ja nu gribēsi ar 2 asīm riņķa līniju zīmēt  :: 

*a_masiks*: IMHO Epis grib aparātam sūtīt mērķa koordinātas, pēc tām aprēķināt laiku, kas nepieciešams lai tur nokļūtu. Un pēc tam no šī laika rēķināt frekvenci kādu padot uz stepperi.

----------


## Vikings

> Viking... negribu samelot, bet man liekas, ka USB LPT un COM portiem nevar pieklut izmantojot portu adreses


 Jā, OK, tam es piekrītu, bet pēc a_masiks teiktā es sapratu, ka palaist uz USB->LPT adaptera var arī programmas, kuras ar portiem sazinās pa tiešo. Varbūt problēma bija tādēļ, ka man palaista userport programma, kas zem WINXP atļauj tiešo piekļuvi portiem. Toreiz neiedomājos userport apstādināt un tad mēģināt palaist IC-prog uz softisko LPT portu. 
Starp citu, kāda ir pieredze ar FTDI USB->LPT čipiem? Nav problēmu?

----------


## 0xDEAD BEEF

> Boriss - ti ņe praff. (C) http://www.ftdichip.com/Documents/DataS ... 232r08.pdf
> http://www.ftdichip.com/Products/FT8U232AM.htm
> Resp - tikai retajam ķīniešu USB-COM adapterim ir IZMANTOTI visi pieejamie com adaptera gali. Bet viņi tomēr ir.


 Nu nezinu... biju parleicinats, ka vieniem nav ring un parejo pinu (tb - tie nestrada). Kapec? Tapec ka PIC dev board 1 neiet ar to com porta emulatoru, bet iet tikai ar parasto com portu, tiesi del ta, ka izmanto ari parejos COM porta pinus, ne tikai RX, TX.

Kas attiecas uz FTDI, tad teiksu ta, ka FTDI ir krietni dargaks par PIC un uz PIC var samest virsu vel citu kodu - proti - par vienu mikreni mazak!  ::  Vispar es pat nebrinitos, ja FTDI butu tas pats PIC, tikai uzraksts nomainits!  :: 
Beefs

----------


## 0xDEAD BEEF

Nevar laist programu, kas sazinas ar portiem pa tieso, pat tad, ja esi uzlicis kaut kadu pretigu draiveri, kurs to lauj darit, JO USB portam nav tada adrese un windows netaisa remapingu portu adresem (vismaz man liekas, ka netaisa), TB - tas draiveris tev lauj izsaukt procesora komandu out, kas tiesi un konkreti datu busa aizsuta tos baitus, ko tu noradi, uz to adresi, kadu noradi, bet ta ka tavs COM/LPT ir virtualais ports, tad skaidrs, ka tavi dati nekad nenonaks lidz USB, jo tev butu jasuta uz draiveri, nevis uz portu.
Piedevam esmu redzejis, ka sitadi out draiveri jaucas kopa ar istajiem draiveriem un vairs nedarbojas normalie windowsa draiveri.
Beefs

----------


## Epis

Sīnusu noteikti ka arī vaidzēs, bet nu sākumā jau viss jāuzkodē C kodā un tad jāskatās vai ir vērts to likt loģikā.
izskatās ka google ir visādi kodu gabali būs kāds jāpamēģina.

----------


## a_masiks

* Velko*


> IMHO Epis grib aparātam sūtīt mērķa koordinātas, pēc tām aprēķināt laiku, kas nepieciešams lai tur nokļūtu. Un pēc tam no šī laika rēķināt frekvenci kādu padot uz stepperi.


 Maza nianse. Tas ir viens no paņēmieniem stepot, ja mēs runājam par 1 (!!!) koordināti. Pēc vienas koordinātes aprēķina un step signālu garuma noteikšanas - mums būs jāsalīdzina  pārējās 2 vai 3 koordinātu step garuma vērības, lai instruments atrastos tajā vietā kur paredzēts. Un tad rēķināsim nākošās koordinātes soļa laika garumus un koriģēsim pirmo koordināti un atkal salāgosim ar visām pārējām, utt. "līdz bezgalībai un vēl tālāk"(C) pat neizdarot nedēļas laikā nevienu soli. IMHO pareizāk ir stepot ar minimālo soļa ilgumu, izlaižot soļus ieskrējienā un bremzēšanas ceļā, proporcionāli kustības ātrumam. Vēl lielāks IMHO ir  - no sākuma der uzveidot sistēmu kas strādā bez akselerācijas tikai ar motora jaudas rezervi un tikai tad ieviest softiskos paātrinājumus lai var atsekot strādājošu sistēmu, nevis gramstīties gar pliku teoriju un motoru kritiskajiem darba režīmiem bez jebkāda rezultāta.

----------


## a_masiks

> Starp citu, kāda ir pieredze ar FTDI USB->LPT čipiem? Nav problēmu?


 Par nožēlu nav bijusi vajadzība pēc šāda devaisa. Tāpēc šai gadījumā neko daudz vairāk par pafilozofēšanu nespēšu palīdzēt...  ::

----------


## 0xDEAD BEEF

Nu tā ir baigā klapata. Protams, ka ar formulu palīdzību ir iespējams samērā precīzi pateikt, kādā tieši pozīcijā atradīsies vītnes ass, ņemot vērā pielikto spēku, ass ātrumu, ass inerci un pārējo agregātu inerces un tādā garā, kā arī būtu jāzin griežamā materiāla griešanas pretestība, kas arī būtu atkarīga no kaudzes parametru. Ar šādu aprēķinu palīdzību būtu iespējam iegūt tiešām taisnu griezumu, nevis integrēti saraustītu līniju (kāpnes), kas kopainā veido vēlamo efektu, BET bļin vecīt epi - tu to mūžā nepaveiksi. Tādā gadijumā tā tava formula ir viens zobrats no sarežģītas ātrumkārbas!
Piedevām - lai šādas formulas izmantotu, tev obligāti ir jābūt fēdbackam no motoriem. Savādāk nekas nesanāks...

Man bija tāda doma, ka būtu jāvar pēc spriegumiem pateikt, kurā momentā cik daudz soļu motors ir nogājis no soļa, jo tur taču inducējas strāva, tam motoram griežoties un tuvojoties magnētam, kā arī mainoties slodzie. Lai to vērotu, es kāreiz nopirku USB oscilloscopu, tikai vel nav sanācis iemēģināt, jo nenormāls slinkums bija rakstīt to koda gabalu, kas sūta komandas uz PIC caur USB. Galvenais no iemesliem bija tāds, ka esmu nolēmis izmantot Visual Studio NET, kur arī bija strādājošs USB komunikācijas piemērs uzrakstīts, bet atdzīšos godīgi - nevaru iebraukt tajā NAMESPACE padarīšanā. Gribētos, lai būtu kāds, kam samaksāt un kurš to uzkodētu manā vietā... tā negribas ar tādiem sīkumiem ķēpāties! :/

EPI - ir klases un formulas, kuras darbojas ar reāliem skaitļiem. Agrāk strādāju par pasniedzēju un labi pārzināju to, kā reāls skaitlis izskatas iekšpusē. Tur bija kaut kāda fiška ar to, ka biti reprezentēja 1/2 1/4 1/8 1/16 u.t.t. TB - ar reālu skaitli NAV iespējam uzrakstīt precīzi 1, jo tas nav 1, bet gan 1 +- epsilons. Reāls skaitlis datoros ir reālā daļa, kas varēja būt no -0.999999 - 0.99999 * E kautkas tur, kur E tikai iekodēts kā vesels skaitlis integers. Atceros, ka bija dažādi reālo skaitļu veidi. Piemēram - paskāla real bija 4 baitu. Nepateikšu, cik liels varēja būt E, bet fiška tāda, ka tas Real tips bija precīzāks, toties mazāks, bet bija arī cits real tips ar 4 baitiem, kuram bija lielāks E, bet mazāk bitu pašai daļai, kā rezultātā ar to tipu varēja aprakstīt lielākus skaitļus (vairāk nulles galā), bet precizitāte strauji kritās, palielinoties 0ļu skaitam.

Skaidrs, ka parastajiem mikrokontrolieriem nav reālo skaitļu instrukcijas, tāpēc tās nākas emulēt un guess what! Dēļ tādas emulēšanas reālo skaitļu darbības neaizņem vair nieka 1-3 insturkcijas, bet jau vairākus 10 vai pat 100tus instrukciju. Ja atmiņa neviļ, tad saskaitīšana un atņemšana gan bija ātra, jo tur bija baigi labi izdomāts ar tiem reālajiem skaitļiem. Kvadrātsakne IMHO bija ļoti sarežģīta operācija, ja to vajag emulēt.

Beefs

----------


## Epis

Tik smagā matemātikā kā tu beef minēji es iet negribu, man vaig vienkāršu kontrollieri uzraugu, kas skatās kas notiek un bišķi pielabo.
nupat meklējot tos kvadrātsaknes kodiņus ugāju uz Microchip appnotes TB040 tur PIC18CXX2 16-bit
Square Root reiķina 149 ciklos un pie 40Mhz ātruma tas ir 14.9us (67 Kilo aprēķini sekundē, kas nozīmē labi ja varēsi lineāri  vadīt tikai 1 motoru pie kādiem 50Khz ātruma) 
par 32bit integer sakni vispār var aizmirs Pics to rēķina 1002 instrukcijās un paiet 100.2us jeb 9,8Khz frekvence ( šitas vairs nekam neder!) 
salīdzinājumam ARM7 LPC2101 pricim 32bit sakni var ar MAX ~70 instrukcijām izvilkt un pie 70Mips ātruma tas ir 1Mhz.  ::

----------


## Velko

> pie 40Mhz ātruma tas ir 14.9us (67 Kilo aprēķini sekundē, kas nozīmē labi ja varēsi lineāri vadīt tikai 1 motoru pie kādiem 50Khz ātruma)


 Vot, šitāda pieeja gan nekam neder. Ja taisies vilkt kvadrātsakni (un visticamāk - veikt vēl čupu ar smagiem aprēķiniem) priekš katra soļa, tad galu galā nepietiks arī ar x gigahercu proci. Līkus algoritmus kompensēt ar skaitļošanas jaudu - tas ir šķībs risinājums.

----------


## 0xDEAD BEEF

Un kuras tad ir tās instrukcijas, kuras tā paātrina saknes vilkšanu uz ARM salīdzinot ar PICu?  :: 

BTW - ir arī tāds variants, kā glabāt populāro sakņu vērtības tabulā. TB - ja tavai izteiksmei ir tikai 2vi parametri, tad rezultāts ir 2dimensiju tabula. Agrāk sīnusa aprēķina paātrināšanai izmantoja 360 reālu skaitļu tabulu. Tas gan samazināja precizitāti līdz 1nam grādam, bet ievērojami palielināja ātrdarbību (laikos, kad datora CPU nesaturēja SIN funkciju, jo jamā parādijās tikai ar 486 laikam, kuriem bija integrēts FPU.

Diemžēl mikrokontrolieru atmiņa ir nepietiekama, lai glabātu lielus masīvu, BET labā ziņa ir tāda, ka no taviem aprēķiniem tāpat nav nekādas jēgas, tāpēc labāk met tam visam mieru!  :: 
Vispār zini Epi - iesaku tev iet pastudēt RTU kaut kādu tehnisko nozari. Tev varētu būt interesanti.

Beefs

----------


## dmd

es zinu ar ko tas beigsies. tā vietā, lai izmantotu vienu kompi, būs uztaisīts klāsteris ar cikloniem.
ko kontrolēs 2 kompji.

----------


## Epis

'Man nupat sanāca palasit vienu Kvadrātsaknes biblotēku (tā bīj domāta priekš ARM proča, bet reka es to pašu kodu ieliku savējā NIos II IDE bišķi pielaboju (vienu vārdu nomainīju) un aizgāja aprēķins un tagat man dod ārā pareizo rezultātu  :: , uz ARM šitas iet 5 cikli 1 bitam, optimizējot (asmā var dabūt 4) es pagaidām nēsu skatījies kādu ASM kodu man tur uzcepa bet ganjau vēlāk vaidzēs apskatītes. ar to iekšējo fpga proci ir tā ka viņš var skrietu ar 100Mhz ātrumu un tas izpildes ātrums ir atkarīgs no kodola lieluma (ecanomy,standart,fast) tākā ja vaidzēs ņemšu viss ātrāko, ja nevaidzēs tad ekanomisko ir no kā izvēlēties  :: 
vispār var teikt ka es jau esu uzprogrammējis šito Step ātruma matemātiku uz sava nios II proča kods strādā, var teikt ka lineārā interpolācija idejiski ir gatava  :: , nav tikai CIII plate vēl gatava, laikam būs jaunajā gadā jāturpina SMD krāsns testi tagt baigi uznāc velme pakodēt.
lai redzētu kāds ir koda izpildes ātrums man tagat jāieliek kodā kāds Performance counteris es tagat skatos kā to taimeri ielikt. 

šeit ir tas saknes vilkšanas algoritms kuru es nospēru no vienas lapas.


```
static long isqrt( long n) {
   long s, t;

#define sqrtBit(k) \
  t = s+(1UL<<(k-1)); t <<= k+1; if (n >= t) { n -= t; s |= 1UL<<k; }

  s = 0UL;
#ifdef __alpha
  if (n >= 1UL<<62) { n -= 1UL<<62; s = 1UL<<31; }
  sqrtBit(30); sqrtBit(29); sqrtBit(28); sqrtBit(27); sqrtBit(26);
  sqrtBit(25); sqrtBit(24); sqrtBit(23); sqrtBit(22); sqrtBit(21);
  sqrtBit(20); sqrtBit(19); sqrtBit(18); sqrtBit(17); sqrtBit(16);
  sqrtBit(15);
#else
  if (n >= 1UL<<30) { n -= 1UL<<30; s = 1UL<<15; }
#endif
  sqrtBit(14); sqrtBit(13); sqrtBit(12); sqrtBit(11); sqrtBit(10);
  sqrtBit(9); sqrtBit(8); sqrtBit(7); sqrtBit(6); sqrtBit(5);
  sqrtBit(4); sqrtBit(3); sqrtBit(2); sqrtBit(1);
  if (n > s<<1) s |= 1UL;

#undef sqrtBit

  return s;
} /* end isqrt */
```

----------


## a_masiks

> vispār var teikt ka es jau esu uzprogrammējis šito Step ātruma matemātiku


 Nuja, gluži tāpat vispār var teikt, ka esi uztaisijis gatavu SMD lodējamo krāsni. Ļoti lēti... un galvenais - ātri...




> šeit ir tas saknes vilkšanas algoritms kuru es nospēru no vienas lapas.


 Mhm... Epis savā elementā...   ::

----------


## karloslv

<atvainojos, var dzēst>

----------


## Epis

> Diemžēl mikrokontrolieru atmiņa ir nepietiekama, lai glabātu lielus masīvu, BET labā ziņa ir tāda, ka no taviem aprēķiniem tāpat nav nekādas jēgas, tāpēc labāk met tam visam mieru! 
> Vispār zini Epi - iesaku tev iet pastudēt RTU kaut kādu tehnisko nozari. Tev varētu būt interesanti.


 Mikrenēm ar to atmiņu ir tā pašvaki bet manai mazajai fpga ir iekšējie 400Kbiti RAMa tākā sinuss funkcijai notekti ka varētu izmatot tabulu, vai arī to tabulu tač var ielikt Flash atmiņā kur vietas ir papillo (16Mb). 
No plikas C uzkodētas formulas protams ka jēgas nekādas bet tas ir sākuma pamats vismaz Lineārajam interpolātor kodam, 

Nu lūk vakar visu dienu nočakarējos ar to performance counteri un itkā atradu kodu kā viņu palaist, un apstādināt, bet ar nolasīšanu nekas nesacāca, jo īsti nemāku vēl C kodā tās perifērijas kodēt un tur starpā ir HAL leyeris un tad caur to arī var piekļūt pie perifērijām, tākā šitā proča C kodēšana ir tāda specifiska, kas atkal prasa laiku lai viņu pilnībā apgūtu,

----------


## a_masiks

Krāsni pabeidzi? Ko esi salodējis krāsnī?

----------


## Epis

> Krāsni pabeidzi? Ko esi salodējis krāsnī?


 Pēdējās 2 dienas nekāda lielā eksperimentēšana nesanāk jo nāk visādi ciemiņi tākā pēc jaunā gada varēšu kautko reāli darīt.
TO lodējamo pastu ar lodāmuru iemēģināju un itkā lodē un sajaucot ar lodavas pastu arī itkā lodē bet švakāk, nez kā būs iekš krāsns.

----------


## GuntisK

> Pēdējās 2 dienas nekāda lielā eksperimentēšana nesanāk jo nāk visādi ciemiņi tākā pēc jaunā gada varēšu kautko reāli darīt.
> TO lodējamo pastu ar lodāmuru iemēģināju un itkā lodē un sajaucot ar lodavas pastu arī itkā lodē bet švakāk, nez kā būs iekš krāsns.


 Nez vai šito ingredientu jaukšana kopā ir laba ideja. Kiš-miš vien sanāks.

----------


## Amigo69

> Nezinu kā tad vispār kompja proci var ierpogrammēt ?? jo cik saprotu iekšējās Flash atmiņam viņam laikam nav tātad laikam...


 Vai kāds šet galīgi nejauc kauto? Piemēram, mikrokontrolieri ar datora centrālo procesoru? Es itkā esmu dzirdējis par tāda priekšmeta "datoru arhitektūra" eksistenci... ieteiktu paklausīties..Tehniskajā universitātē 1. kursā datoriķos māca...



> apskatījos par to pascal valodu un man liekās ka tā valoda ir tāda kā novecojusi man vaig kautko uz C,C++ negribās mācītes jaunu valodu (lai gan viņas visas ir līdzīgas).
> kāds zin kādu smuku programmu ar normāliem instrumentiem, līdzīgiem visual studio 2005 tikai lai var rakstīt kodu priekš paša procesora un to progu flash atmiņā iegrūst  ???


 Kāds tad ir mērķis? Viena lieta ir tiešām cītīgi ētīt un rakties visādās arhitektūrās, uzbūvēs utt. skatoties šito, jau velk uz asambleru, nemaz nerunājot par augsta līmeņa valodām.... Kāds negrib pat DOS, bet grib darboties un programmēt jaukā un krāsainā objektorienntētā Windows vidē..?

http://www.pbm.com/~lindahl/mel.html
"This is one of hackerdom's great heroic epics, free verse or no. In a few spare images it captures more about the esthetics and psychology of hacking than all the scholarly volumes on the subject put together."

----------


## Epis

Es pēdējā laikā sapratu To, kas tad man īsti nepatīk tajā "galda kompja" izmantošanā (šeit es domāju visi Micro-ATC PC/104 visa elektronika kur izmanto tos kompja X86 pročus), un tas galvenasi iemesls ir tīri praktisks, tas ka tādu Mātesplati pats reāli nu nekādīgies uztaisīt (par lētu naudu) un pats salodēt nevar, jo tās ir daudzslāņu mātesplates izstrādātas pēc jaunākajiem PCB sasniegumiem, (minī celiņi, un blind ViA) līdz ar to lai tādu augsti tehnoloģisku plati uztaisītu vaig kā minimums 1000$. 
+ tādas plates ar ātrgaitas signāliem virs 200Mhz ir šausmīgi grūti taisīt, piemēram pamēģiniet uztaisīt plati kādai DDRII400 atmiņai, vai kādam PCIexpres slotam, bez super simulātor programmām nekas nesanāk.

man svarīgi mācēt, mācītes programmēt tos čips kurus es varu pats uzlodēt un PCB uztaisīt, vēlams 2 līmeņu, max 4 līmeņu (tas jau ir dārgi). Tākā es šīs visas kompju tehnoloģijas pagaidām principa pēc izslēdzu un negribu mācītes viņas programmēt dziļā dzelžu līmenī, izņemot augsto Visaul C# līmeni, jo bez kompja tomēr nevar, bet lai kompis vadītu kādus robotu dzelžus īstajā laikā to es pagaidām nedarīšu, vismaz līdz tam kamēr neiemācīšos kompja procim uztaisīt to mātesplati un un salodēt. 

Es tagat mēģinu uztaisīt 2līmeņu plati DDR266  atmiņai, ja strādās tad tā būs krutākā tehnoloģija ko būšu iemēģinājis.

----------


## a_masiks

> tas ka tādu Mātesplati pats reāli nu nekādīgies uztaisīt (par lētu naudu) un pats salodēt nevar, jo tās ir daudzslāņu mātesplates izstrādātas pēc jaunākajiem PCB sasniegumiem, (minī celiņi, un blind ViA) līdz ar to lai tādu augsti tehnoloģisku plati uztaisītu vaig kā minimums 1000$.


 


> Tākā es šīs visas kompju tehnoloģijas pagaidām principa pēc izslēdzu un negribu mācītes viņas programmēt dziļā dzelžu līmenī, .........to es pagaidām nedarīšu, vismaz līdz tam kamēr neiemācīšos kompja procim uztaisīt to mātesplati un un salodēt.


 Nu nezinu.... man šķiet tu lažo. Takš saņemies, un uztaisi! Redz, pat skolnieki, kuriem gribās mājās savu personālo datoru - spējīgi kaut kā izgatavot mātes plati pat dual un kvadrokores pročiem. Un cik es dažus no viņiem pazīstu - viņi kaut kā spēja pasūtīt tās plates vismaz 10 reizes lētāk, nekā  par 1000$. Un zini - liekas viņi visi izkoda to dzelžu līmeņa programmēšanu, jo beigu sānā viņiem visiem tas pašu savāktais kompis sāka strādāt!!!   ::   ::  
Zini, izskatās ka tie skolnieki tevi ir smagi salikuši. Viņiemtā sistēma strādā uz 2-3Ghz   ::   ::  .... un maksāja vismaz piecas reizes lētāk, nekā tavi 1000ls, kurus esi jau iztērējis... jā... tā jau ir - mūsu jaunatne ir baigi super advancēta. Raķetes. Līdzi neizskriesi....

----------


## Epis

Nu nu gribu redzēt kur kāds skolnieks ir uztaisījis vismaz kautcik funkcionējošu mātesplati ar dual un kvadrokores proču socketiem un vismaz kautkādu minimālu funkcionalitāti  ???
Un ja ir tad cik līmeņu PCB tie Brīnumbērni izmanto ??? 

Ieliec kādu Foto, vai linku gribu redzēt.

nevis 1000ls bet gan līdz 1000$, jo tās 10-12 layer PCB apmēram tā maksā ja taisa pāris plates, tākā tas ir ļoti dārgs prieks. 
Piemērs:
PCBcart.com 10līmeņu Platei (celiņi 0,1mm Via izmērs 0,4mm(ar 0,2mm caurumu) plates izmērs 200x200mm izmaksas ir:
Tooling cost: *one-time 688$
Unit Price:  354$ (1gabals)  ja ņem 5gabalus tad 1 plate ies pa 126$ un 5cas pa 630$

kopā lai vispār tiktu pie šādas 10līmeņu super plates vaig iztērēt kā minimums 1042$  (neskaitot PVN un citus nodokļus) 

Tākā nevaig man te Batonus spraust ausīs, es cenas zinu !!

----------


## a_masiks

OMG.... einšteins tu mūsu....
http://www.xshop.lv/?lang=lv&page=motherboards_lga775
Lūk tev links ar funkionējošām mātesplatēm, ar 8 līdz 10 slāņiem, ar tādu veiktspēju, kas tev būs pieejama tikai vecumdienās.
Maksās /PIEVĒRS UZMANĪBU!!!/ - sākot no 20Ls. Neviena tava PCB ar  visiem "superlētajiem" komponentiem nemaksā tik lēti. Pat ja ignorē tavu darbu lodējot un bakstot detaļas. Skolniekiem atliek tikai izvēlēties atbilstošu mātespalti savām vajadzībām, jāpasūta... un - vuaļā! Megasuperjaudīga /salīdzinot ar tavējo/ divas vai pat trīs reizes lētāka, 100 reizes elastīgāk konfigurējama un tikpat daudz reižu lielākām iespējām mātesplate rokā! Tu gribi teikt - sīkie tevi nav apjājuši? Nu.... ja nu vienīgi pieņemam, ka apjājis tu esi sevi pats. Lai gan es palieku pie cietas pārliecība, ka tu nu gan neesi sevi apjājis. Tas nekādi nevar būt!!!
Un tici man, es pats biju liecinieks tam, ka šādu kompletu savāca mans sīcis un palaida OP sistēmu. Izejot no tavas pozīcijas - mans sīcis tomēr spēja saprogrammēt to mātesplati dzelžu līmenī, tā ka viņa saka strādāt!   ::   ::   ::   :P

----------


## Epis

Tev a_masik laikam nepieleca par ko es te runāju !
es runāju par mātesplates taisīsānu, bet tu te man parādi gatavu mātesplati, pa 20Ls domā ka es nezinu cik maksā gatavas mātesplates.

Mūsdienās tādi super programmētāji ir pa pillo kas māk kompī kautkādu programmeli uzcept (apsties BOOT.forumu) un labākajā gadījumā caur kompi kautko arī vadīt, slēgt utt.

Gribētu redzēt kā tie krutie kompju programmeri daritu ja būtu jāuztaisa kāda vienkārša mājsaimniecības prece, kautvai veļasmašinas elektronika ?? 
 iedomājieties veļasmašinu kuru vada kāds core2duo procis    ::  caur USB, vai LTP portu un galā ir kāds FTDI čips kas vada tos motoru tranzisorus un katukādus citus gatavās elektronikas platītes, jo programmis tač pats Plati uztaisīt nemācēs, līdza ar to nāksies vien pirkt gatavās plates.

----------


## a_masiks

> Tev a_masik laikam nepieleca par ko es te runāju !
> es runāju par mātesplates taisīsānu, bet tu te man parādi gatavu mātesplati, pa 20Ls domā ka es nezinu cik maksā gatavas mātesplates.


 Kāpēc - pieleca jau pirms pusgada tavas cepšanās centrālais points. Tu gribi doties uz Austrāliju ceļojumā... un tā vietā lai nopirktu aviobiļeti uz standarta reisu - sāc drudžaini vākt kopā virsskaņas laineri vienai personai.  Kā sauc tādu darbošanos un tādu kadru - izfantazē pac. Man nāk prātā viena vienīga ņecenzurščina. Var būt tev padosies labāk?




> Gribētu redzēt kā tie krutie kompju programmeri daritu ja būtu jāuztaisa kāda vienkārša mājsaimniecības prece, kautvai veļasmašinas elektronika ?? 
> iedomājieties veļasmašinu kuru vada kāds core2duo procis  caur USB, vai LTP portu un galā ir kāds FTDI čips kas vada tos motoru tranzisorus un katukādus citus gatavās elektronikas platītes, jo programmis tač pats Plati uztaisīt nemācēs, līdza ar to nāksies vien pirkt gatavās plates.


 Jā mēs jau te redzam kā tas notiek: kad vienkārša zobratu pārnesuma vietā virpai vairāku gadu garumā bezrezultatīvi tiek mēģināts ietūcīt aizvien jaudīgāku un jaudīgāku mikrokontrolieri. Te jau ir redzams viens "programists", kurš domā ka māk pročus programmēt, bet paniski baidās un nemāk rakstīt programmu prastai PC portu vadībai.

----------


## Velko

Doh... Epi!

Kāda h*ja pēc būtu pašam jātaisa mātesplate? Ar ko tā būs labāka par to, kas nopērkama veikalā? Ar to, ka uz tās būs štekeris, kuram pievienot sensorus un motora kontroli? Tā ir atrisināma problēma.

ATmegas Tev likās par švaku (reāli - varbūt bija varbūt nē). Taisam kautkādu brīnumu uz Cyclone un fanojam cik nu tas būs jaudīgs un ko tik nu nevarēs darīt. Bet tad kad tev piedāvā risinājumu, kurš saliek tavu "superplati" vienos vārtos, tad pēkšņi nē - tas būs jau pārāk jaudīgs.

----------


## Epis

Tādēļ ka parastajiem pročiem, un mātesplatēm nav tādas perifērijas kā quadratūro signālu dekoderi, un frekvences ģenerātor loģikas, ja gribēsi tādas perifērijas tad vaidzēs spraust klāt kādu PCI karti uz kuras būs tā pate FPGA, (es zinu tādas kartes ir) kas tieši domāta priekš signālu ģenerēšanas un arī dekodēšanas maksā ap 200$ tākā tas kas nosākuma izskatījās ļot lēt (procis + mātesplate ->20+20=40Ls beigās izmaksās vēl 140Ls par PCI karti, a man būs kādi 40-60ls (stand alone versija bez kompja (kompis tikai progas ielādēšanai).

Ir tā ka šādai signālu dekodēšanai un ģenerēšanai viss labāk piemērta ir FPGA,CPLD, un arī mikrokontrollieri kā AVR, PIC 
līdz ar to vai tas ir prātīgi izmantot Ghz Proci šādām operācijām ???

Es izmantoju FPGA lai samazinātu detaļu skaitu uz plates, ieliekot fpga 32bit proci + visus hardware signālu dekoderus, ģenerātorus, ja nebūtu FPGA tad man vaidzētu normālu CPLD ar kādiem 500 loģikām + kādu arm7 proci vai pat ko jaudītāku kā AVR32 A7000 proci, tākā ar FPGA es ietaupu uz lodēšanas un detaļu skaita, un kopā energo patēriņš būs zems jo 65nm ciklon 3 ēd ļoti maz varēs darbināt no USB vada (ja gribēs DDR atmiņu darbināt tad vaidzēs ārējo barošanas bloku jo tā atmiņ viena pate var noēdīs ap 1Watu (tur bīj dokumentos ka ēd 200-400ma (2,5V) lasot netiek vēl skaitīts ko noēd katra DQ datu līnija, kopā tas cipars būs ap un pat virs 1Wata. lai tādu vienu DDR čipu darbinātu.

----------


## Vikings

Ja? Un kas pēc tam čakarēsies ar tā standalone iegrožotā rīnuma konfigurēšanu? Protams, tu pats. Es Tavā vietā labāk sāktu ar PCI karti lai kaut kas vispār sāktu strādāt un kad tas būs izkosts līdz galam, strādās visi enkoderi dekoderi utt tad varbūt domātu par standalone vadību. A to ķeroties klāt visam un gribot uztaisīt visu uzreiz var sanākt, ka neuztaisi neko.

----------


## Epis

Nu tādu PCI karti ir grūti uztaisīt, ir protams Dev.kiti kā sīs pa 999$ tur nāk Quartus 1 gada licenze ar visiem MegaCore® IP Library kodoliem kur ir PCI master/slave, DDRII un citi kodiņi. 

viss lētākā PCI plate ir Lattice pa 175$ bet tā ir tāda baigi primitīvā un tur tie PCI kodu kodoli ir tikai evaluation demo, tākā būs jātasia pašam.


xilinxam vaidzētu būt arī kādām PCI spartan lētām kartēm un vienīgais dev.kits bīj ar PCIexpres x1 pa 315$



Tad vēl ir pusfabrikātiska PCI plate ar xilinx cpld no tā fpga4fun.com linka maksā arī 300$.

vārdsakot es neko lētu vispār neredzu, tur kur ir piejami visi loģikas gatavie kodoli plate maksā  1000$, ja gribi ietaupīt kodē pats un pēc plati pa 175$ kura nav nekāda navaročinā, un tā ir vecā ECP mikrene (tā nav jaunā Krutā ECP2 ar DSP blokiem  :: .
varbūt ka pameklējot kautko vēl atradīšu.

atradu to linku ar industriālajiem PCI moduļiem http://www.acromag.com 
tur ir PCI moduļi kur ir visādas TTL, analogie IO un citi navaroti parsvarā tur stāv virsū vecā Alteras ACEX fpga un maksā tās mantiņas 600-1000$, 
ir arī viens mezzanine module kur ir cyclone II un tas maksā 1000$ tākā te nekā laba arī nav.


Lokies kā gribi tās PCI mantiņas maksā smuku naudu  ::  vieglāk atrast kādu Gb, vai 100Mb ethernet FPGA plati

----------


## Epis

Vēl pameklēju un parastas PCI IO expansion kartes lētākā ar kādiem 24 opto izolētiem IO maksāja 150$ bet tā normāli cena svārstās +-300$ , atradu PCI motion controllier karti (protams ar FPGA) un tā maksāja jau 1160$ šeit links.
http://www.aberdeeninc.com/abcatg/PCIio.htm

Tākā visiem lielajiem kompja koderiem kuri baigi fano par savām lētajām Mātesplatēm par 20Ls ir liels ieberziens, jo lai vispār kautko izdarītu ir vēl jāiztērē kādi 300$  :P

----------


## Vikings

Bet tev taču teica - taisi pats! Tepat forumā apgrozās cilvēki, kas taisījuši PCI plates, ja redzēs, ka kaut ko REĀLI esi gatavs darīt tad palīdzēs.

----------


## Epis

Es paskatījos tās PCI, PCI-X kartes standartus un ātrumus un man viņi tā nevisai, salīdzinot ar PCIe (express) kur parastākais X1 iet ar 250MB/s ātrumu tas ir tas pats kas parastā 33Mhz 64bit PCI-X līnija un es lasīu ka šādu 64bit PCI-X līniju nav nemaz tik viegli uztaisīt, tur vajadzīgs milzīgs 184pin Slots, 33bit līnijai ir 120Pin Slots bet tai ar 33Mhz ātrumu ir tikai 132MB/s un tās līnijas ir halfduplex, tas nozīmē ka pa vieniem un tiem pašiem vadiem dati plūst abos virzienos, bet PCIe ir Full duplex katram datu virzienam sava datu līnija attiecīgi RX, un TX līdz ar to ar 2Gb/s (250MB/s) ātrumu mēs kopā nosūtam 4Gb/s(500MB/s) informācijas no kompja uz kompi. tas reāli ir 2x vairāk nekā šitās lielais184pin PCI-X standarts, tākā PCIe ir pavisam cita lieta.

PCIe x1 priekšrocības izmantojot XIO1100 PHY čipu: 

Liels ārums 250MB/s
mazs Pinu skaits (diferenciālie TX,RX, un SCK (6vadi) + barošana un vēl pāris vadi)
Vieglāk vilkt PCB, jo jāvelk mazāk vadi.
tagat nopērkams PCIe PHY čips pa 11,5$, kas pārveidot PCIe par 8/16bit paralēlo datu līniju (125Mhz 16bit vai 125Mhz 8bit DDR 
čips iet 100pin BGA pakā bet labums tāds ka tā BGA paka ir ar lodēm kas izvietotas tikai 3 līnijās(katrā malā) lidz ar to nebūs jāizmanto nekādas super mazās 0,4mm VIA. 
Nav jāčakarējās ar visādiem PCIe Draiveriem, jo To darīs pats čips un kompja otrā pusē arī vaidzētu būt soft draiveriem domāju ka TI ir tos uztaisījusi un naudu par tiem neprasa.
minimāls IO skaits kas vaidzīgs lai FPGA saslēgtu ar to PCIe čipu ja izmanto DDR tad vaidzēs 16 DDR IO pinus + pāris pini čipa vadībai, salīdzinot ar PCI-X (kautvai 32bit) tur vaig kā minimums pie 50IO tākā ar PCIe es ietaupu IO resursus un nav jādomā par FPGA BGA pakā. 

mīnus: 
Uzmanīgi Jāprojektē PCB, un visa tā muļa jāmodelē uz Hyperlinx, savādāk 2Ghz signālu vietā būs vieni gļuki! 
vaig papildus 1.5 vai 1.8Voltu barošanas bloku.

Kā jūs domājat vai uz 2 līmeņu PCB ir reāli to PCIe x1 karti uztaisīt ?? 

Vēl tie PCI, PCI-X sloti pamazām izzūd un tiek aizvietoti ar PCIe slotiem it sevišķi tajās mini-ATX un citās mātesplatēs, vienkārši nav vietas priekš lielajiem PCI slotiem tādēļ priekšroka ir PCIe

----------


## Epis

Noskaidroju to ka šitas TI PCIe čips ir tieši taisīts priekš lētajām FPGA (tās kurām nav tie GB transciveri) lai varētu komunicēt ar kompi, un TI sadarbojās ar Alteru un šitas risinājums ir iztestēts un pārbaudīts un Alterai ir arī attiecīgs x1 PCI Express MegaCore® kodols, jeb precīzāk media access control (MAC) layer, bez šī MAC komunicēties ar kompi nevar, un atkal ir tā ka tas MAC kodols maksā, bet viņu var bez maksas iemēģināt, un ja strādā moš pašam uztaisīt kautko vienkāršaku.
Ir piejams arī Dev.kits no vienas trēšas firmas "knott Systems" un tas brīnums maksā 1500$   ::  


ievērtējiet cik tuvu ir novietots tas TI XIO1100 PHY čips ir novietots maximāli tuvu PCIe konektoram tur to TX,RX līniju garumi ir ne lielāki par 1cm, man liekās ka pie tik īsiem celiņiem nevaidzētu būt lielai starpībai starp 2līmeņu plati un kādu 6līmeņu, tākā vaidzētu būt reāli uztaisīt 2līmeņu plati. ar šo čipu.

intresanti tas ka šitas kits ir faktiski identisks šim PCI-X alteras kitam vienīgi konektors cits un vēl pāris izmaiņas, bet pamats viss tāds pats.

----------


## sharps

Epi prieksh kam tev PCI-E? Ar ko tev nepatiik PCI? aatrums arii taa ap 133MB/s. Saki pa iisu. Nu zamahnul. Bet varu pateikt ka ar PCI tev viegli neies.  Pirmais ir PCB uzprojekteeshana. Esmu PCi projekteejis un varu dot kaadu padomu. Otrais. PCI programmeeshanu uztici tiem kas to ir dariijushi. Nav nemaz tik viegli visas taas vadiibas liinijas izkost cauri. Karoch viens tu visu nepavilksi.
starp citu PCI vajag 4 slaanjus. Atsevishkjos ne tik kritiskos gadiijumos var iztikt ar 2 slaanjiem, bet tur labi jaamaak traseet. Taisiijis esmu arii PCI-E. Uzmetu divos slaanjos. Straadaaja uz maziem aatrumiem (ap 60MBit ), bet kaa uz maksimumu buutu nemaz nezinu. Ar to mazuminju toreiz pietika.

----------


## Epis

> Epi prieksh kam tev PCI-E? Ar ko tev nepatiik PCI? aatrums arii taa ap 133MB/s. Saki pa iisu. Nu zamahnul.


 tas PCI standarts pamazām izmirst un tiek aizstāts ar PCIe x1 tākā tas ir viens no faktoriem, un ir arī tīri tehniskais tam PCI ir milzīgais 120pin li, bet PCIe mazs 36pin kotakts tas ir vairāk ka 3x mazāk,šis vadu skaits ir būtisks PCB taisīsānā, jo mazāk vadu jo vieglāk PCB vilkt un mazāk problēmu.
Vēl ātrumā ir ievērojama starpība PCIe x1 2,5Ghz ir 2,5x ātrāks nekā PCI 32bit 33Mhz jo PCIe ir full duplex sūta un saņem vielaicīgi, bet PCI tikai var nosūtīt vai arī saņemt, vēl man liekās ka PCIe protokols būs bišķi vienkāršāks, nekā tas ir PCI jo cik lasīju tad PCIe slotu TX,RX līnijas netiek dalītas ar citiem PCIe slotiem uz mātesplates, bet PCI kartēm šie pini visām PCI kartēm kas ir uz mātesplates ir vien un tie paši līdz ar to sistēma tiek dalīta, un šādai sistēmai arī būs sarežģitāks komunikācij protokols. 

Par 2līmeņu PCB tad es apskatījos hyperlinx simulātorā kā šitos diferenciālos Gb signālus modelē un galvenais lai būtu tā diferenciālais impedence tie 100omi tad signāli +- būs normāli gan parastai 2līmeņu PCB, gan 4 un vairāk.
Vienā vietā bīja rakstīts ka šitas PCIexpress esot taisīts lai varētu izmantot 4līmeņu PCB, tas nozīmē ka uz 2 līmeņiem arī var, jo salīdzinot ar citiem standartiem diferenciālajiem piniem vaig to saķeri(differential coupling) savā starpā līdz ar to viņus var likt Top layerī uz PCB plates, bet ne diferenciālajiem piniem ir tieši pretēji viņi jāliek PCB vidējos līmeņos lai būtu mazāks crostalk starp piniem. 

karoč man atliek dabūt Tā TI čipa IBIS modeli un es to PCIe x1 plati varētu uztaisīt, jo ja simulātors rāda ka viss ir OK tad visam arī jābūt OK. 
vienīgi kā būs ar to kompja programmēšanu, un FPGA MAC draivera rakstīsānu(itkā šeit var sākumā laist gatavo Evaluation varsiju  ::  ) domāju ka kautkur vaidzētu būt kādam VC# PCIe paraug kodam (vai vismaz paraug projektam) 
sliktākajā gadījumā ja nesanāks ar VC# iekomunicēt ar PCIe karti tad jāmēģina zemākā līmenī sasniegt karte caur kautkādu DOS. 

Ja es to PCIe taisītu tad tā būtu tikai kā alternatīva, jo es tač nevaru taisīt šito USB plati un vēl atsevišķu PCIe plati, tādēļ likšu visu uz vienas gan USB,DDR, un arī PCIe. (pie šāda fpga čipu pieslēguma skaita man jau liekās ka vai tik nav jāņem BGA256 čips jo uz 144tqfp šito visu čipu kalnu salikt nevar pat ja mēģina IO līnijas dalī. 

Veiksmes procents ka kautkas ies varētu būt kādi 10-20% (neveiksmes kādi 80-90%  ::  )

----------


## Epis

> Atsevishkjos ne tik kritiskos gadiijumos var iztikt ar 2 slaanjiem, bet tur labi jaamaak traseet. Taisiijis esmu arii PCI-E. Uzmetu divos slaanjos. Straadaaja uz maziem aatrumiem (ap 60MBit ), bet kaa uz maksimumu buutu nemaz nezinu. Ar to mazuminju toreiz pietika.


 Kādas programmas (PCB taisīsānai un singālu modelēšani) un čipus tu toriez izmantoji tai PCIe kartei ?? 

man hiperlinx rāda ka nav liela strpība starp 4 līmeņu un 2 līmeņu ja diferencālais impedence ir 100omi abos gadījumos.

----------


## Epis

priekš tiem kam intresē smukas simulātor bildītes, šeit ir uzmodelēta parastā mana 2līmeņu PCB RF4 1oz 1,5mm biezumu plate un diferenciālo pinu izmēri tā lai dabūtu to Impedence ap 100 omiem un viss labāk to var panākt ja šos pinus no visām malām ietver ar GND slāni, tad vaig tikai 13mil līnijas (un 8mil atstarpi) , un tad atsevišķi līnijas impecence ir 77omi  :: 
[attachment=2:3jt4zdi8]PCIe_DIff-100ohm_Trace-77ohm.JPG[/attachment:3jt4zdi8]

tālāk šeit ir daudzslāņu PCB kur starp TOP un tuvāko iekšējo GND slāni ir 10mil attālums tad 102 omu diferencālo impedence var dabūt ja ir 10mil ceļš un 8mil atstarpe ar šādu variatnu katras līnijas impedence ir 65omi (labāk nekā 2slāņu platei) 
reku bilde;
[attachment=1:3jt4zdi8]PCIe_DIff-102ohm_Trace-65ohm.JPG[/attachment:3jt4zdi8]

untagat Beigās Simulējam abas šitās līnijas ar kautkādu DS90LV031ATM kautkāds national LVDS 200Mhz čipa IBIS diferenciālo pinu modeli un uzliekot 1000Mhz clock iegūstam šādu bildi.
aizmirsu pateikt ka pie recivera starp piniem ir 100 omu rezistors:
tie signāli kas ir bišķi zemāki ir manas 2slānu plates bet tie kas bišķi augstāki ir 4 un vairāk slāņu PCB.
kā redzat tad tā starpība nav nekāda lielā, līdz ar to ja pareizi uzprojektē PCB tad ar 2 slāņiem var dabūt ne sliktāku rezultātu kā ar 4 vai vairāk  :: 
[attachment=0:3jt4zdi8]PCIe_Dif-zemais ir 2layer 100ohm.JPG[/attachment:3jt4zdi8]

----------


## dmd

epi, dajoš sarunājam uzdevumu, vienkāršu un ļoti reālu: uzteisi aparātu, kurš iepīkstas katru reizi, kad savieno kontaktu A ar kontaktu B, citādi liekas, ka tu dzīvo ne šinī visumā.

----------


## Epis

Man liekās ka tas jau ir kā azarts, un kārtējais eksperiments amēram tā būs vai nebūs, gribas redzēt kur ir tā robeža ko pats vari uztasīt 2 līmeņos, un salodēt. 
īsti nevarēju joprojām atrast tos PCIe IBISmmodeļ signālus, Ti mājaslapā lai failu dabūtu ir viņš jāpiepreasa un jāreģistrājas, bet Alteras fpga lapā tāda modeļa īsti nebīj, viņu GX transciver fpga piniem, tur viņi rekomendēja paņemt parastos diferenciālos LVDS un modelēt ar tiem, un es tā arī nupat izdarīju, paņēmu LVDS 2,5V pinus un uztaisīju 2.5Ghz simulāciju. izsjatās ja kas ļoti, ļoti labi, faktiski izmantojot manu 2līmeņu PCB man tie signāli sanāca pat labāki nekā  ar otru precīzāku modeli, līnijas ir tās pašas vecās, bildēs es likšu tikai savu 2līmeņ PCB modeli
[attachment=2:1oqex7ju]PCie_LVDS-2500Mhz_Shēma.JPG[/attachment:1oqex7ju]
šeit paši signāli
[attachment=1:1oqex7ju]PCie_LVDS-2500Mhz.JPG[/attachment:1oqex7ju]
[attachment=0:1oqex7ju]PCie_LVDS-2500Mhz sāk..JPG[/attachment:1oqex7ju]
intresants izskatās sākums var redzēt ka tikai trešajā clk ciklā sņēmējs var jau reāli uztvert šo LVDS signālu, pēc tam signāls aiziet tīrs un smuks. vai tas ir slikti vai labi es nezinu. 

Vārdsakot esu pārliecinājies ka lai kāds būtu tas Ibis modelis tam Ghz draiverim, šitā lieta strāda, uz 2 līmeņu PCB, vienīgās problēmas varētu būt ar PCB vilkšanu jo pēc šīm shēmām plates diferenciālie pinu pāri būs jāatdala novisa apkārtējā ar GND celiņiem.
labums šajā visā ir tas ka PCIex1 ir tikai 3 šādi diferenciālie pinu pāri, līdz ar to trīs vadu pārus savilkt pēč šāda principa vaidzētu izdoties,
 nākošais ko es darīšu arī būs mēģinājums savilkt šos 3 pinus TX,RX,CLK ja tas izdodās tad var 100% apgalvot ka šitas verķis ies ar visiem 2,5Ghz.

----------


## Epis

Atradu vēlvienu PCIe PHY čipu tas ir NXP PX1011A, uz šitā čipa bīj viens ciklon II dev.kits, un arī tas spartan 3 PCI kits, pa 315$, tas PHY čips ir līdzīgs tam TI čipam vienīgā atšķirība ir Core voltage un IO voltage tas šim NXP čipam ir 1,2V un IO ir 2,5V TI bīj 1,5V Core un IO 1,5-1,8V, tehniski sanāk ka šitas NXP ir labāks jo nevaig papildus nekādus DC regulāturs viss ies uz 1.2V un 2.5v vienīgais kas tā nevisai patīk šajā čipā ir 81pin BGA paka kas ir pilnā bet tam TI čipam bīj 3 rindu BGA100 paka un no viņas izvilkt IO ir daudz vieglāk (nevaig nekādas Vias) darbības principi abiem PHY čipiem ir vieni un tie paši, un cenas arī līdzīgas NXP maksā 11,8$ TI iet pa 11.6  $ 

ja kas TI čips ir ar svina lodēm (SNPB) tas NXP ir laikam tikai Leed free versijā līdz ar to jāņem tas ko vieglāk lodēt  ::  

Vēl skatījos kā ir taisīta Spartan-3 PCIe plate ieraudzīju ka TX līniju starpā ir kapacitātors 0.1uF  kam tas vaidzīgs?? 
es pamanīju ka manai kompja PCIex16 videokartei arī ir šitie kapacitātori pusei diferenciālo līniju. 
dabūju tā NXP IBIS failu ja varēs palaist tad iemodelēšu īstos PCIe signālus  ::

----------


## tvdx

nu ko izlasiju topika nosaukumu nezinu kas pa vidu apspriests bet domaats kkas  ko esu nedaudz padarijis iesaku emu8086 triviaali pat ir piemeeri tam ko tev vajag... bez bios neies krastaa jo bios ir visa organizators un cpu tiek darbinaats tikai peec chipseta paveeleem kura darbu koordanize bios

----------


## Epis

apstījos to emu8086 un izskatās ka tā proga nav par brīvu, kautkāda licenze jāpērks,
 tur bīj kautkādi kodu piemēri zem BV .NET ko tas nozīmē ka var kautkā cept progas arī uz VC# ? 

Ar kādām vispār programmām,kodiem,draiverim var normāli tikt pie PCI slota un rakstīt,lasīt,mainīt uzstādījumus tādā garā. ?? 

man tagat taisās PCI fpga karte, un jāsāk domāt kā to brīnumu ar kompi nolasīt.

----------


## dmd

draiverus jau tev, draugs nāksies rakstīt pašam. normāls darbiņš tā uz kādu pusgadu, vai tavā gadījumā kādiem trīs.
C

----------


## jeecha

Pasham draiveris jaaraksta buus. Ieksh C un var naakties arii inlainotu asambleru kautkur lietot. Papildus Visual Studio vajadzees arii draiveru SDK un pa cik programmeeshanaa esi iesaaceejs - visticamaak vismaz gadu un ljoti lielu pacietiibu. Nedaudz vieglaak buutu linux kernelim draiveri uzrakstiit - daudz vairaak piemeeru (viss kernelja source koks :: .

----------


## Velko

Drusku par tēmu - lūk labs tutoriālis kā sākt rakstīt OS kodolu no nulles. Tajā pašā saitā vēl daudz citu rakstu par to, ko darīt tālāk. Izrādās - nekas diži sarežģīts tas nav.

----------


## tvdx

emu 8086 ir pa maksu bet triaals arii labs 30 dienas kaa iistais bet peectam tikai emulators neiet bet kompilee un rediģē šā vai tā pats emulatoru reti izmantoju bet ar šito ir easy rakstīt un kļūdas mekleet   
ir speciaalaam make boot direktiivas u.t.t. beztam izskaidrots arii kaa notiek sektoru ielasiisana atminjaa 
dokumentaacijaa ir daudz interrupti un vissas atbalstiitaas komandas un pikemeeri arii ir io exampli

----------


## Epis

Tas izskatās tīri labs tutorials, vismaz sākums ir cerīgs  ::  
Pamazām būs jāsāk rakties tajos karneļos, mistiskajos GCC (šitam brīnumam nav normāla tutoriala, vismaz es cik esu arī agrāk skatījies neko sakarīgu nēsu atradis.)
Jo ir tā ka īsto kompja Ghz jaudu (un kur nu vēl 2,4kodol jaudu) var just tikai zemākajā kodēšanas līmenī, a tā zem windows,linux neko just nevar.

----------


## dmd

pie visas manas cieņas pret tevi, epi, tu esi idiots. ja arī man arī pienākas bans par to. (un būtībā jau arī pienākas)

mistiskais gcc nev nekas cits, kā asm, C un dažu citu lietu kompilators. "man gcc" mēģinaji? ā nav normālas operētājsistēmas? google? i feel lucky? tā jau ir, ka par 20 gadus vecu un ļoti plaši izmantotu softu infas nekādas nav. 
ā, sapratu, nav grāmatas gcc for dummies. nu žēl.... 

just neko nevar? ne zem linukša, ne zem mastdaja? par affinity jau neko neesi dzirdējis? par multithread? 
nu kur šitādi ģēniji rodas?

----------


## okars

Klau, Episkais jampapinj!

Palaid "Windows Task Manager", atver TABu "Performance", iesleedz menu opciju "View -> Show Kernel Times" un paskaties uz sarkano grafiku! Nu, redzeeji cik CPU "apeed" kErnelis (izlasi kaartiigi!) un cik apeed Tava C# .NET programma? Redzi - Tavai programmai tiek atdoti 95% CPU laika, bet taa vienalga bremzee. Taatad pie bremzeeshanas vainiiga ir Tava nemaakuliigi izstraadaataa programma nevis Windows, Linux vai kaada cita opereetaajsisteema.

Puisiit, pirmkaart, iemaacies labi programmeet. Otrkaart, uzraksti kaadu "native" programmu attieciigajam OSam un tad pljurksti. Piemeeram, prieksh Windows tas buus C (nevis C++) un Windows API. Un, izmantojot shaadas tehniski pareizas pieejas, vairs nekad nenaaks praataa taadas glupiibas kaa OS izveide tikai prieksh tam lai "sajustu CPU jaudu"!!!

----------


## tvdx

oh oh oh džeki jau ģēniji un jūs tiešām ticat ka ir šķirba starp 4 ghz un 100 mhz???? muļķi ne jau pliki cpu ghz nosaka pārsvarā chipsets+soughtbridge
var rau 1000+1000 skaitiit tad tas 4 ghz buus tiešām ātrāks bet pamēģini dabūt 10^45 faktoriālu kautvai tad ārtāk ies tad kuram ātrās data links ar ramu+hdd jo cpu savaa cachaa to nevarees iebaast un daudz buus jaašancē pa lēnajiem celiņiem lai tos datus iesaakumaa ramaa bet tad hdd baaztu un diemžēl visa dziive sākas uz lielajiem skaitļliem......un win nereaali ed resursus vismazaak asm ja neskaita binaaro kodu bet tanī jūs džeki laikamne rindinju neesat rakstijuši....
šamējā uyzrakstiju atto os foxtrot edition- zemak kaa beta versija daudz caurumi ... pazina tik pāris komandas bet kaa os loaderi vareetu izmantot .....

kernel noziimee kodols un vot tas ir tas kod kuru tu iisteniibaa raksti jo iebooto pirmos 512 baiTUS un neezinu nevienu normaalu os kuru tanii var iebaazt...
es gan daru citaadaak... vienaa failaa ierakstu vissu kodu tad pēc 128 baitiem(lai vel rezerve paliek)uzrakstu disc read rindiņas un ielasu visu osu iekšā un tad ar jmp uz to lokāciju kurā esu ielasijis+tik biti kuraa ir peedeejaa ielasīšanas instrukcija+1(lai neiesaaktos mūžīgais cikls)  un nav jāraizējas ka kāds vīrus tev varēs kerneli vai loaderi inficēt un tādejādi njobeigt visus .... patiesībā šinī piegājienā tādi smagie vīrusi nav iespējami ja tik maak pareizi rakstiit un neveelies naakotnee piepelniities ar antiviirusu rakstiishanu(diemžēl pašam vien arī vīrusi būs jāraksta  ::  )

----------


## okars

Un veel viens jampampinjsh...

1. Iemaacies latvieshu valodas gramatiku vismaz elementaaraa liimenii (atdaliit teikumus un lietot pieturziimes), jo savaadaak Tavus murgus neviens cilveeks nevar saprast!
2. Chipset - mikrosheemu komplekts. Chipsets ir gan northbridge, gan southbridge! Southbridge nav NEKAADA sakara ar CPU un RAM, kaa arii muusdienu procesoriem (ak jel, Intel jau liidz tam veel nav ticis...) arii northbridge ar RAM nav nekaada sakara, jo CPU ir integreets RAM kontrolieris.
3. 10^45 faktoriaalu ar muusdienu datoru nav iespeejams apreekjinaat un, iespeejams, arii pierakstiit.
4. Tos 512 baitus sauc MBR (Master Boot Record) un, kaa liecina arii nosaukums, tajos neviens arii nav paredzeejis iebaazt OS. Pie tam no tiem 512 baitiem tikai pirmie 440 ir paredzeeti ielaades kodam.
5. Ja Tu arii ielaades kodu ielasi operatiivajaa atminjaa, tad Tu vienkaarshi esi kaarteejais prog-lameris.
6. FAILS ir FAILU SISTEEMAS objekts! Vai Tavam OS ir failu sisteema?
7. Ar viirusiem tam visam nav NEKAADA sakara!

----------


## jeecha

Klau, a tu pats kaadreiz esi kautko nopietnu vispaar uzkodeejis? Tu tieshaam domaa ka te neviens nekad neko nav kodeejis un nopietni?!? Tu vispaar zini kas ir operenes task scheduleris lai plashi muldeetu par to cik ljoti rij taa vai cita operene pati no sevis? Tu tagad maaciisi visiem kas ir bootloader un kernel? Tu pats vispaar esi kaadreiz palasiijis kas tas ir, jo tas ko tu te raksti ir pilniigaakaa fignja. Tu vispaar kaadreiz pats esi kaadu operenes kernelja draiveri rakstiijis ar inlainotu asambleru vai vecajos labajos laikos kautko asambleraa? Tu ar galvu domaa kad apgalvo kas nosaka pc veiktspeeju? Tev nedalec ka tas ir ljoti atkariigs no veicamaa uzdevuma - vienaa gadiijumaa taa buus CPU veiktspeeja, citos gadiijumos atminjas interfeisa veiktspeeja, citos atkal aareejo datu neseeju veiktspeeja.

Es vairaak kaa 10 gadus straadaaju programmatuuras izstraadee (nee, taas nav kautkaadas web lapas, paarsvaraa taas ir finansu informaacijas apstraades sisteemas off-line un reaalaa laika, paarsvaraa C/C++, starp citu tu kompaanijas kuraa straadaaju programmatuuru lieto ikdienaa) un pagaidaam viss ko tu te par datoru arhitektuuru muldi ir pilniigaakaa fignja. Varbuut arii kaadam kursh doto teemu nepaarzin tu arii speetu ar savu vaavuljoshanu iestaastiit ka kautko jeedz, bet pieljauju ka neesmu vieniigais kursh redz cik lielu sviestu tu te nes (par tavaam speejaam elektronikas dizainaa man shkjiet visiem jau ir skaidrs, un tagad man personiigi ir arii skaidrs par tavaam speejaam programmatuuras dizainaa).

Ja gribi turpinaat shaadaa stilaa - luudzu nelielu sarakstu ar to kur esi maaciijies un kaadus programmatuuras projektus esi realizeejis.

Un nee, es nemekleeju kashkji, man vienkaarshi besii aaraa kad bezjeegaa di**** un nez ko no sevis teelo.

P.S. Shis teksts bija adreseets tvdx, lai nav paarpratumu  ::

----------


## dmd

ak vai tvdx.

1) tu jauc kerneli ar MBR. 
2) tu nekad neesi dzirdējis, ka asms būtībā ir opkodi, kam iedoti trīs burtiņi labākai saprašanai. (
2a) tu neesi neko dzirdējis par opkodiem.
3) ar rama komunikācijām nodarbojas northbridge, nevis southbridge

you, my sir failed.

edit: nokavēju.

----------


## Epis

Vispār ir tā kan vaig uztaisīt draiveri tai PCI fpga kartei, ja kas es varu savu kartes interfeisu pielāgot arī kādam esošajam draiverim, tākā man pietiktu pat ar kādu paraug draivera kodu vēlams kādā normālā,modernā programmā kā VC#.
Tālāk man vaig lai es to draiveri varētu izmantot priekš kodēšanas kādā no tām Interaktīvajām progām kā VC# (linuxam vispār ir kāds VC# progas analogs ?? )  lai es varu fiksi uzcept kādu programmiņu kur tiek vākti sūtīti dati,grafiski attēloti, apmēram kā mana SMD krāsns VC# proga, un G-code pāris instrukciju dekoderis kodēta tadā "easy" stillā  ::  
Tākā es no sākuma meklēšu šādu gatvo kodu variantu, (vieglo ceļu, jo esu slinks), ja tas galīgi neies cauri tad vaidzēs domāt par tiem GCC, un citiem brīnumiem (man šis progas nepatīk, pārāk daudz jākodē salīdzinot ar IDE(integreated development Enviroment). 

ja kas man to realtime darbību nemaz vairs tā nevaig, priekš tam man ir fpga PCI karte, proti kompi man vaig priekš debagošanas,vizualizēšanas, un datu pirmsapstrādes (kā G-koda konvertācija), ja vaidzēs kādu mega smagu FPU matemātiku tad gribi vai negribi būs jāņem Ge force GT8800 video karte un jāmācās tā CUDA  ::  tur ir tie simit Gflopi par saprātīgu cenu, (pats neko lētāku uzlodēt uztaisīt nevar).

----------


## Velko

Meklē draivera paraugu C#? Nu ko - veiksmi meklējumos...

Tikai viena bēda - neatradīsi. C# rakstītai programmai ir nepieciešamas .NET Runtime bibliotēkas, kuras pieejamas tikai User līmenī - tas kurā griežas visas "parastās" programmas.  Lai varētu darboties ar dzelžiem, tavam kodam jāgriežas OS kodola līmenī - pats kodols un draiveri. Iesākumam vari palasīties.

Principā - tev ir jāraksta 2 lietas: draiveris (iekš C vai ASM), kurš māk runāties ar dzelzi un nodrošina sazināšanos ar "ārpuskodola" pasauli. Pēc tam jāraksta lietotāja programma, kura savāc datus no draivera un parāda lietotājam. 

Uz Windows lietotāja programmu vari rakstīt C#, bet iespējams ka vajadzēs kādu gabaliņu arī iekš C - neesmu pārliecināts, vai C# māk ar draiveriem pa taisno sazināties, var nākties taisīt vēl kādu papildus .dll iekš C. Protams - informāciju un piemērus nebūs nemaz tik viegli atrast.

Iekš Linukša - principā tas pats, tikai C# vietā varētu ņemt Python (prog. valoda, kurā nav daudz jāraksta) + PyGTK (bibliotēka ar logiem, pogām utml.) + Glade (lai nav visas pogas "ar roku" no koda jāveido). Jāsaka gan, ka nav guži tik ērti kā iekš Visual Studio, bet var iztikt. C daļa tāpat paliek, tikai šeit priekšrocība, ka ir dabūjami neskaitāmi piemēri. Linux pasaulē visam (ar ļoti minimāliem izņēmumiem) ir pieejamas sources.

To jauno kodolu pieminēju vairāk sagadīšanās pēc - pats ap to lietu pašlaik nedaudz "čubinos" (neesmu nekāds Torvalds, bet tomēr šo to varu  ::  ) un tvdx atkal iekustināja šo topiku. Ja gribētu šādi visu uztaisīt, tad gan būtu jākodē, jākodē un vēlreiz jākodē  ::

----------


## dmd

es tev neticu.
 faktoriālu studījā   ::

----------


## Velko

Droši vien kautkas no šitās sērijas:
[attachment=0:31ctvh03]ex.png[/attachment:31ctvh03]
Bet lai tādu izrēķinātu jau nav jābūt nekādam ģēnijam, par kādu "nesakarīgi-muldoņa" tvdx cenšas sevi iztēlot.

----------


## okars

Velko, tas nav faktoriaals!  :: 
Bet, runaajot par faktoriaaliem, paskatieties kaa aug vinju veertiibas: http://en.wikipedia.org/wiki/Factorial
No 100000 faktoriaals ir jau 2.8242294079... × 10^456573. Diez cik ciparu tad ir faktoriaalam no 10^45??  :: 

Nee, nu bet vispaar jautri - te ir reaals cirks par velti!  :: 
Un shajaa cirkaa, laikam, klauns tvdx domaa, ka MEES nespeejam domaat taalaak par 64 bitu integer skaitiitaaju, bet patiesiibaa tieshi mees speejam un zinam, ka shaadu skaitli dators nozheelojamaa tvdx dziives laikaa neizreekjinaas. Un pilniigi iespeejams, ka arii Saules sisteemas pastaaveeshanas laikaa nee! Taapat veel arii pierakstiit kaut ko tik lielu diez vai mums atradiisies kur, un, pat ja atradiisies, adreseeshanai informaacijas glabaataajaa vien jau paies gadi.  :: 

Batch skriptu olimpiaade?? Tas nu gan paraada datora saprashanas liimeni...  :: 

Meinfreimi ir veci nevienam nevajadziigi dinozauri, kas dazhu lielu kompaaniju komerciaalu iemeslu deelj netiek izmesti veestures meeslainee.

Tev, beerns, veel viena vieta ir par miikstu, lai kvantu datorus piemineetu! Pie tam tie veel dziivee neeksistee un pat nav zinaams vai jebkad eksistees.

Un ASM esot taalu no mashiinkodiem!  :: 
Pirmkaart, jampampinj, raadot piemeeru, Tu pat neesi pateicis par kaada procesora mashiinkodiem runaa, kaadeelj piemeeram vispaar nav nekaadas jeegas. Otrkaart, mashiinkodus normaali pieraksta HEXaa, nevis decimaalajaa sisteemaa. Treshkaart, tam Tavam mashiinkodam attieciigajaa ASM valodaa ir operators, kas kompileeshnaa tiek aizstaats tieshi ar sho pashu mashiinkodu!

----------


## karloslv

stulbs tu esi, tvdx, ka lecies. galva tev strādā, bet uzvedies kā lohs. nu, ko lecies - es arī savulaik esmu informātikas, matemātikas, fizikas olimpiādēs guvis vietas, so what? ne jau ar tukšu uzpūtību tu kaut ko sasniegsi. žēl pilnīgi skatīties, kā tu te āksties. novēlu iemācīties sarunāties un sadarboties ar cilvēkiem, noderēs. citādi kļūsi par vientuļu idiņu. bet labi, droši vien hormonu vētras pāries un pats visu sapratīsi.

----------


## Velko

> Velko, tas nav faktoriaals!


 Zinu, ka nav. Bet pirmajā brīdī liekas iespaidīgi: "pēdējais" summas elements - x pakāpē bezgalība dalīts ar bezgalības faktoriālu  ::  Protams, ar pareizo paņēmienu nav vajadzīgs ne cikls līdz bezgalībai, ne milzonīgu pakāpju un faktoriālu aprēķināšana.

Vispār skumji - ja šis pokemons tiešām ir ticis līdz atlases kārtai Informātikas olimpiādē, kā pats apgalvoja kādā citā topikā (arī to apšaubu), tad tas tikai parāda, cik nožēlojams kļuvis izglītības līmenis (oops, nu jau pēc Raimonda izklausos). No otras puses - mums, vecajiem bukiem darbs un labas algas nodrošinātas - neaug konkurenti  ::

----------


## karloslv

velko, es jau pat nebrīnītos, ja šis ir ģeniāls (un nenormāli haotisks + hiperaktīvs) programmētājs/matemātiķis, kurš attiecīgā vidē un brīdī spēj būt produktīvs (un atlasei tieši tas arī būtu jāvērtē), taču diemžēl nereti tādi cilvēki ir sociāli pilnīgi lunohodi. visbiežāk tie noslēdzas un ir klasiskie intravertie matemātiķi, bet te, šķiet, redzama hormonu + sliktas/neesošas audzināšanas + hiperaktivitātes + milzīgu kompleksu unikāla kombinācija. ar kaut ko līdzīgu jau esmu sastapies, reiz blandoties pa olimpiādēm.

----------


## Epis

Tagat bišķi pa TĒMU.
pameklēju google Linux driver development un atradu tādu DDK-2.6.16.18 (divas lielas arhivētas failu pakas 105;95Mb) 
http://www.kroah.com/log/2006/05/24/

ir šitas īstais tutorials, instruments, pamacība ??? itkā tur iekšā ir grāmata,pamācība par to karneli.
Nokopēju grāmatu "An Introduction to GCC" for the GNU Compilers gcc and g++. 

tad vēl izlasīju šito:  http://kroah.com/log/linux/ols_2006_keynote.html   palika skaidrāks par linux būtību, un sapratu ka ja grib taisīt to karneli tad jāiet jātusē šajā vietā http://kernelnewbies.org/Linux_Kernel_Newbies. 

tad vēl atradu vienu intresantu linku, rakstu,draiver paraugu : "Writing a Linux Driver" http://www.linuxjournal.com/article/2476

pamazām tā pilde paliek skaidrāka.

Nu jā ar Windowsu laikam ka nekas nesanāks jo to windows DDK nekur īsti nevar nolādēt, un vispār windows ir baigais sūds.

----------


## ansius

Epim, hm a pasham MS negribēji pajautāt http://www.microsoft.com/whdc/default.mspx

ne kur nav tik labi kā mājās, jebšu ja gribi rakstīt draiveri priekš Windows, tad kāpēc nemeklēt info pie Windows izstrādātāja?

----------


## okars

Tu, karne(vaa)list, iemaacies lasiit - KERNELIS!!!




> Nu jā ar Windowsu laikam ka nekas nesanāks jo to windows DDK nekur īsti nevar nolādēt, un vispār windows ir baigais sūds.


 Ja Tev rokas ir tik iisas, ka nespeej sadabuut Windows DDK, tad kaa Tu domaa ar taadaam rokaam draiverus uzprogrammeet? Klau, bet kaadeelj pats lieto BAIGO SUUDU?  ::   ::   ::

----------


## Velko

Karloslv, savā laikā jau arī blandījos, bet jāsaka, ka citiem dalībniekiem gandrīz nekādu uzmanību nepievērsu, tā ka šādus subjektus vienkārši nebūšu pamanījis. Taisnību sakot - pašā sākumā, ja baigi veicas tad drusku sakāpj gan galvā. Pašam ar' tā gadījās. Tomēr tas pāriet kopā ar pirmo lielo aplauzienu (man tā sanāca ar ķīmiju - pēdējā vieta valsts kārtā). Pēc tam jau tas paliek par "so what?".

Epis, visdrīzāk ka tā ir pamācība, piemēri utt. Instrumenti (gcc, make un citas lietas), izejas kodi atrodami pašos Linux distributīvos. Vispopulārākais laikam ir Ubuntu, bet distras izvēlei nav lielas nozīmes - šīs lietas ir visās. Protams kods būs jāraksta "parastā" teksta redaktorā, piem. GEdit - tāds advancēts Notepad. Make komandas jālaiž no termināļa, bet kad piešaujas - saproti, ka visi tie Visual Studio "bling bling" nav nemaz tik nepieciešami.

----------


## tvdx

oo oskar redzu ka tomeer zini kas ir tas dinozaurs un tomeer tie dinozouri ir daudz daudz reizes jaudiigaaki pa tavu pc un ariidzen uzticamaaki un arii tie ar laiku attīstas un ja jau vinji izmirstoši tad tomēr kāpēc tevis pieminētās komerckompānijas un arii tevis nepiemineetaas lietas kaa lidostas(pc ir tikai ekraana emulatora videe taakaa staavi klusu) un zinaatniksaas izpeetes centros vel šamējie stāv????  un šiem mainīgais 1 gb vinji par to nospļaujas un rēķina vēsā mierā......
un to 10^45 var sareizinaat  tik ~ 10 h paietu peec viduveeja algoritma(protams ja piestartē tītu bez os bet asm kodaa uzrakstiits kas jaadara un kaa variabli izmatot var piem vecos labos 10GB (aizņemies no cietaa vietu ja maaki gana labi un negrbu te aizbildinaajumus dzirdeet ka tas nav iespeejams jo ir) un kur tad reizinaashana stabinjaa palikusi taa reekinam galvaa ka vairs stabinju nemaakam ideaali nu jaa tad jau kompim reizinaat stabinjaa neiemaaciisi bet taa var bezgaliigi lielus skaitlus reizinaat....
batch ir izpildaamaisd fails ne tik vien .bat     nu ja neko nezinu tad laikam naakamgad atskiriibaa no shii gada datoru olimpiaadee liidz atlasei netikshu
    *  Batch tasks
      Solutions comprise a single source file of a computer program which reads data from the standard input (stdin) and writes its answer to the standard output (stdout).
    * Reactive tasks
      Solutions comprise a single source file of a computer program which interacts with an "opponent" program provided by the organizers using the standard input and the standard output for reading data and writing results.
    * Output-only tasks
      Solutions comprise a set of "output" data files.

For every task a memory limit will be specified. This limit is on the overall memory usage including executable code size, a stack, a heap, etc.
Batch tasks

The source program provided by the contestant must be contained in a single source file. The task statement will define:

    * the task to be solved,
    * the input and output data formats,
    * the input value ranges (when applicable),
    * the resource limitations for the computations (e.g. CPU time, memory limitations),
    * elements of the grading criteria (e.g. "40% of the official test data will have N up to 100"),
    * any other constraints on the program.

Reactive tasks

The source program provided by the contestant must be contained in a single source file. The task statement will specify:

    * the task to be solved,
    * the input and output data formats,
    * explanation of how to interact with the "opponent" program,
    * the resource limitations for the computations (e.g., CPU time, memory limitations),
    * elements of the grading criteria (e.g. "40% of the official test data will have N up to 100"),
    * any other constraints on the program.

Output-only tasks

The competition might include tasks for which input data is given to the contestant and the contestant is required to produce only the output data as a solution. If the contestant writes programs to help determine the output data, the programs must not be submitted with the solution. The input data will be provided in ASCII text files. For these tasks, the task statement will specify:

    * the task to be solved,
    * the structure of the input and output files,
    * information on obtaining the full set of official input files,
    * grading criteria.


taappat kaa ceoi

----------


## okars

Tajos uzdevumos anglju vaards "batch" ir lietots citaa noziimee un neapziimee batch skriptu. Vieniigaa probleema ir taa ka Tu kaa katrs low-IQ subjekts nemaaki rakstiit pat savaa dzimtajaa valodaa, liidz ar ko neviens nesaprot ko Tu ar saviem hieroglifiem esi tur domaajis!

Visas lielaas kompaanijas (arii lidostas, celjojumu agjentuuras utt.) izmanto meinfreimus tikai veesturisku faktu deelj. Shobriid migraacija uz citu sisteemu vinjiem sagaadaatu vairaak probleemu kaa buutu ieguvums. Ar pashu datortehniku tam nav nekaada sakara! Un nepuut te miglu par zinaatniskaas izpeetes centriem - nopietniem apreekjiniem izmanto superdatorus, kas parasti ir baazeeti uz daudz x86 procesoriem, jo taa vienkaarshi ir leetaak!




> un tomeer tie dinozouri ir daudz daudz reizes jaudiigaaki pa tavu pc un ariidzen uzticamaaki un arii tie ar laiku attīstas


 Vienkaarshi AIZVER MUTI par lietaam par kuraam neko nesajeedz! Nekas sakariigs attiistiijies tur nav kopsh 90-ajiem gadiem.

Uuberkrutais meinfreims par tuukstoshiem Ls:
http://en.wikipedia.org/wiki/Mainfra...nd_performance
"The smallest System z9 IBM mainframes today run at about 26 MIPS and the largest System z10 at about 30,657 MIPS — a 1 to 1179 performance capacity ratio."

Un parasts maajas datora procesors par Ls 96:
http://www.cpu-world.com/CPUs/K10/AM...0WCGDBOX).html
"Sandra Dhrystone (MIPS)	42512.3"

Tev ir reti shaura piere - Tev sen jau skaidro, ka teoreetiski protams arii taadu faktoriaalu var izreekjinaat, bet tas nav iespeejams mums pienjemamaa laikaa. Tavas nosauktaas 10 stundas ir Tavi tiinja slapjie sapnji, kas tikai paraada to cik shvaki Tev ir ar elementaaru algebru! HDD kaa variablis...  ::   ::   ::  ...cik Saules muuzhus (tieshaa noziimee) Tu plaano dziivot? Tu domaa, ka esi baigi gudrs, ka saproti, ka HDD var izmantot mainiigaa glabaashanai, bet atver acis - to sheit saprot gandriiz VISI! Un gandriiz visi saprot veel vairaak - to, ka tas HDD aatrums ir veel daudz leenaaks par RAM, bet pat ar RAM aatrumu nepietiek! Tu tak pat neapjeedz, ka pat jaunaakie HDD pat linear read rezhiimaa ir 100 reizes leenaaki par operatiivo atminju, par piekljuves laiku 5-15 ms vispaar nerunaajot!  ::

----------


## tvdx

eu eu eu superdatori uz x 86 baazes ?????!!!!!! ierausies nu jau padsmit gadu vecaa veesturee un uzzini ka superdatori ir kvantu datori un tie darbojas uz kvantiem ne uz kkaadiem x86 pročiem(tākā PATS AIZVER MUTI AMBĪLI KĀRTĒJAIS KAS SALASIJIES BĒRNU ŽURNĀLUS) jup piekriitu ka nemaaku latviešu valodaa rakstiit jo vairs to neatpaziistu.... starpene kājene palaistuve....? kādreiz lietoja savādāk tagad izrādās ka jālieto citādāk jo savādāk attiecas uz savādām lietām un tāpat nākamā pietura un nākošais vilciens.... zinu šito bet nepiekrītu ka lateni vaig izpist lai visiem krieviņiem tā šķistu viegli saprotama.... gribēs iemācīsies tāpat ja nemāk tad ar visu jauno vilni izraidāmi no valsts.....
iisteniibaa izmanto mainfreimus jo viņiem vnk nav iespeejami viiirusi ..... visas banku sisteemas uz to ir baazeetas pat valodu zinu un datubaazi bet nemineesu esmu apsolijis un jau taa pa daudz muldu kaa driikstu......un neuzskatat mani par jukušu ...uzmet uz sava pc vai pat uz jaunaakaa intel xeon proča šitos kvantumus apstraadaat un viņš vnk par pelniem pārvērtīsies taa sakarsiis ka sadegs 10 sek+-2 sek   un wikipediai ļoti uzticies ja neesi pamanijis arii pats tur vari kko ielikt...
dodu jums reaalu iepeeju man pieraadiit ka esat taadi krutie.........uztaisam sacenes... sameklēšu serveri satausīšu vidi un uzdevumus.... kad buusiet mani viennoziimiigi samizojuši tad saakad burziit citādi skataties ka paši neuzraujaties.... gadaas taa ka saakumaaa liekas ka tu no programmeesanas zini visu tad ka nezini neko tad ka jau kko sajeegt(mana stadija) kad tu sāc sajēgt normālā līmeni kad tu sajēdz visu bet esi ambīlis jo nevelc matemātiku(matene man patiik) un tad tik tu kļūsti par expertu un tad tu esi vajadzīgs daudzkur....
aaa indieši iedomājās modernizēt sistēmas no mainfraimiem migrreet uz citu vidi(preciizaak nezinu) bet cilveeki no Latvijas dabuuja skriet paliigaa jo šie ar savām modernajām metodēm-valodu zinu(jeb tulkojumā esmu gatavs iemācīties 2 mēn laikā) savaara superiigas ziepes........diemzeel paziistu gan tos kas straadaa ar mainfraima valodaam gan arii ar delphi c c++ c# turpinaat????

----------


## jeecha

Haha, tieshaam zini uz kaa banku un vispaar finansu informaacijas sisteemas tiek buuveetas? Tev neienaak praataa ka varbuut kaads sheit ar shaadu sisteemu izstraadi pelna naudu un par sho teemu iespeejams zin pietiekami lai tava muldeeshana paarsvaraa liktos diezgan smiekliiga?  :: 
P.S. COBOL un mainfreimi patiesiibaa nav gluzhi vairs modee;
P.P.S. Par indieshu koderiem gan piekritiishu, ir bijusi pieredze - pirksti veikli, smadzenes iipashi nestraadaa - rezultaataa ljoti daudz un liika koda  ::

----------


## Epis

Mikrosoftā var tikai novilkt Windows Server 2003 DDK, tas man neder, citiem vaig visādas reģistrācijas,acountus.
tākā izņemot linux citas izvēles nav + kā redzat es principiāli pārēju uz Open sorce arī šī jaunā fpga tika izvēlēta jo procis,perifērijas ir Open sorce  :: 

Oftops: 
Kvantu dators manā skatījumā ir pilnīgs sviests, utopiska fantāzija, jo domājam loģiski, ja tur to informāciju apstrādā mazākās elementāl daļiņas, ātomi un citi zvēri, tad loģiski spriežot viņi ir ļoti jūtīgi ārējai ietekmei, visādiem starojumiem, līdz ar to es uzskatu ka tas ir neiespējami viņus no tās ārējās ietekmes noizolēt, līdz ar to viņi praktiski pēc būtības nav derīgi datu apstrādei, tas būtu apmēram tas pats ka kāds matemātikai izmantotu analogos signālus un Opampus, tad rezultāts būtu atkarīgs no signāla tīruma, un to signālu tīrumu varētu ietekmēt ārējais EMI,gļuki un rezultātsbūtu tikai aptuvens ar +- kļūdu, ja šādā analogajā līmenī vēl var kautko darīt (filtri,ekrāni) tad gribu redzēt ka to izdarīsiet Ātomu,kvantu limeni. 
Kā zināms tad cilvēka smadzenes strādā analogajā signālu līmenī un neko labāku, ātrāku, efektīvāku par tām izgudrot nevar!, tākā nakošais super dators varētu būt analogais (izmantojot jauno Piekto elementu Memristoru, kas būtu ideāls priekš sādiem jauniem analogajiem signālu pročiem, ar kuriem varētu uztaisīt vismaz kautcik jaudīgu čipu (pielīdzinot cilvēka  smadzeņu jaudai). 
Ir jau uztaisīts pirmais Analogais čips (Anadigm) FPAA, bet nu tur ir pamaz tie analogie elementi, bet ar tiem var veikt samērā sarežģitas matemātiskas darbības ar daudz,daudz zemāku energo patērīņu, pagaidām tur vēl nekā tāda ievērojama nav, bet kad sāks izmantot tos Memristorus tad varēs redzēs primos īsti krutos čipus.

Ja jau aizgāja runa par super datoriem tad ir tikai 2 varianti:
1 jaunākās Video kartes kā Nvidia TESLA 10, un ATI ar saviem stream procesoriem.
2. milzīgās FPGA ar saviem tūkstošiem DSP bloku (stratix IV Maximum Performance 1,288 multipliers (18x1 ::  at  550 MHz = 708 GMACS ) 
Tas arī viss Nav nekā jaudīgāka pašlaik pasaulē. 

Mana vīzija par nākotni, un tagadni - superkompju kontektā.

----------


## okars

Epim...
Tu tak pat google nemaaki izmantot! http://www.microsoft.com/whdc/DevTools/WDK/WDKpkg.mspx Luuk Tev DDK jaunajaam OS. Pie tam, ja Tu maaceetu lasiit, tad buutu izlasiijis ka arii Windows Server 2003 DDK nav tikai prieksh Windows Server 2003.

FPAA principaa ir opampu kaudziite, kam nav nekaada sakara ar datoriem.

Abiem klauniem...
Jums nav NEKAADAS sajeegas par to kas ir kvantu dators! (Epis gan sheit ir nedaudz pietuvojies realitaatei, bet tvdx ir veel Simpsonu stadijaa)
Jums nav NEKAADAS sajeegas par to kas ir superdators! (atkal Epis nedaudz reaalaaks, bet vispaar abi auzaas, tikai katrs pa savam)
Tas ir shobriid jaudiigaakais superdators: http://en.wikipedia.org/wiki/IBM_Roadrunner
...un kaads "paarsteigums"... visparastaakie AMD Opteron un IBM PowerXCell (x86 un Cell arhitektuuras attieciigi) prochi!  :: 

tvdxam...
Tu pat neatshkjir vaardus "atpaziit" un "atziit". Tas liek domaat, ka liidz pamatskolas beigshanai Tev veel ir ljoti taalu! Teikumus atdala visaas valodaas, un arii pieturziimes lieto. Tam iisti nav sakara ar pashu valodu - tas ir veids kaa savu sakaamo padariit logjiski saprotamu citiem.

Viirusi attieciigos apstaakljos ir iespeejami jebkurai datorsisteemai.
Ak dies, un Tu pat zini, ka meinfreimiem lieto COBOL un JCL? Tas tak ir vispasaules nosleepums!!!  ::   ::   :: 
Iedodot CPU apstraadaat lielu datu apjomu, tas sadeg... - mazaak multenes skaties!

Labi nodefineeji zinaashanu stadijas. Tieshi ideaali pats atbilsti pirmajai "ka saakumaaa liekas ka tu no programmeesanas zini visu" un nekaadi nespeej paariet uz otro "tad ka nezini neko". Ja Tu domaa, ka 10^45 faktoriaalu var izreekjinaat ar muusdienu datortehniku, tad Tev matene nav pat vidusskolas liimenii un liidz ambiilim Tev veel daudz ko maaciities!

Es jau esmu ljoti vajadziigs eksperts savaas dazhaas jomaas, kaa arii pietiekoshi normaali zinu veel daudz citu IT, elektronikas un tehnikas jomu. Vieniigais par ko piekriitu ir indieshu darba stils, jo, taapat kaa jeecham, arii pasham ar vinjiem ir bijusi pieredze! Neesi gadiijumaa indietis?  :: 




> diemzeel paziistu gan tos kas straadaa ar mainfraima valodaam gan arii ar delphi c c++ c# turpinaat????


 Turpini - un gan jau kaut kad sasniegsi to sarakstu ar kaadaam valodaam es esmu straadaajis!  ::  Bet tas nemaina manas domas par to, ka COBOL ir haotiska miskaste, C# programmeetaaji ar retiem iznjeemumiem ir pilniigi lameri, kas neko nesajeedz no OS, un Delphi ir saliidzinoshi nesen kljuvis par dinozauru, ko arii ir pienaacis laiks izmest veestures meeslainee.

----------


## tvdx

labi....ja tu taads ģēnijs tad pastāsti par saviem kvantu kompiihien un superdatoriem
nu ok biski paarpiileeju tik paaris chipos meedz izdegt caurumi un te nav runa par nedaudz pa lielu datu daudzums bet vnk gigantisks datu apjoms...
ja tu mini cobol un jcl tad veciit tu neesi gaajis liidzi manfreimiem.......tadad ir a*****+N******  ja tev shitie kko izteiks tad tu vatreetu kko reaali zinaat  bet ja ne saku priekshaa 2. ir no software ag

kuraa valodinjaa tad tu straadaa asm,fortranaa,moska baisicaa vai varbuuut jaunaajaaas obj.orent. ...... nevienai lielajai firmai tie juusu pc un jaunaas obj.or. valodas ineintresee jo kapeec izmest naudu ja mainfreimi ir aatraaki , ietilpiigaaki,un drošāki????


veciit manfreimam viirusi nav teoreetiski un arii praktiskii iespeejami jo kodola iesleegshanaas briidii kodols saliidzina visas veertiibas vai ir taadas kaa naakas un arii izsleegshana mirklii.....aaaaaaaaaaaaa jaa mainfreiman ir droša datu izeja bet ieejas vispaar nav (vienvirziena nets)

----------


## Vikings

> aaaaaaaaaaaaa jaa mainfreiman ir droša datu izeja bet ieejas vispaar nav (vienvirziena nets)


 Tīkls, kas datus tikai pārraida un neuztver? Hmm, interesanti kā tad viņš zin ko sūtīt?  ::  Jautrība uzņem apgriezienus.

----------


## dmd

write only memory   ::

----------


## jeecha

Taas seenes, vai ko nu tur tvdx lieto, kaa izskataas ir diezgan speeciigas  ::

----------


## Velko

> ... jo kodola iesleegshanaas briidii kodols saliidzina visas veertiibas vai ir taadas kaa naakas un arii izsleegshana mirklii


 Un kā būs, ja pa starpu pačakarēs dinamisko linku tabulu? Pēc tam vīrusi var mierīgi tikt iekšā. Protams - sīkākas detaļas par šo paņēmienu zina tikai retais  ::

----------


## tvdx

vispaar zini kas ir mainfreims????..... pičakarēt dinamisko linku tabulu????....sākumaa saproti ka tur visi nosaukumi,visi principi ir citaadaaki vai pat pareizaak teikt savaadaaki piem komanda shutdown !!!! neuzdroshinies taadu iedot (guardian os) preciizi visu nezinu jo tomeer vael vinjus jauki patur slepeniibaa un tie nummurinji kas wikipeedijaa ir iepriekšējā gadsimta sākuma vai pat vel agraaki modeļi laiks iet un viss mainaas.....

----------


## Velko

> vispaar zini kas ir mainfreims????..... pičakarēt dinamisko linku tabulu????....sākumaa saproti ka tur visi nosaukumi,visi principi ir citaadaaki


 Protams, ka zinu atšķirību. Uz PC nemaz tādas tabulas nav - tā ir mainfreima fīča. Papēti dokumentāciju cītīgāk.

----------


## tvdx

nu velko kur tad straadaa??? ja pa latviju dziivojies tad saproti-lielie viiri to dokumentaaciju piekāš jo redz dokumentāciju lai cik dīvaini nebuutu raksta tie kurus nevar laizt pie izstrādes  ::  tu arii izskaties peec taada dokumentaaciju rakstiitaaja

----------


## Velko

Nuja, īsti vīri ne backupus taisa, ne dokumentāciju lasa. Nu, bet avatars pie postiem nav mana fotogrāfija, tā ka ne tev spriest pēc kā es izskatos.

----------


## jeecha

tvdx, un kur tu straadaa? Ja gribi turpinaat visiem te ljechiit kautko tad luudzu pamato savu "kompetenci" ar darba vietu un ienjemamo amatu.

----------


## tvdx

teiksim taa kolausos un maacos no starptautiskajiem speciem....

----------


## okars

> nu ok biski paarpiileeju tik paaris chipos meedz izdegt caurumi un te nav runa par nedaudz pa lielu datu daudzums bet vnk gigantisks datu apjoms...


 Tev pat nav nekaadas sajeegas par esosho procesoru darbiibas principiem! Tiiniit, Tu manam maajas datora CPU vari iedot apstraadaat kaut  visas pasaules datoru datus, bet vinjam no taa nebuus ne silts, ne auksts. Cita lieta, ka 99% klientu tos datus savas dziives laikaa nesagadiiis.  :: 




> ja tu mini cobol un jcl tad veciit tu neesi gaajis liidzi manfreimiem.......tadad ir a*****+N******  ja tev shitie kko izteiks tad tu vatreetu kko reaali zinaat


 COBOL ir programmeeshanas valoda, JCL ir uzdevumu kontroles valoda, ADABAS ir datu baazes vadiibas sisteema un NATURAL ir specifiska biznesa logjikas/datu baazu programmeeshanas valoda, bet tam ko Tu tur puut par neieshanu liidzi laikam te vispaar nav nekaada sakara. Pie tam, kaa jau ieprieksh teicu, ja Tu ej liidzi laikam, tad Tu meinfreimus aizmirsti! Idejiski x86 nav taa veiksmiigaakaa arhitektuura un liidz muusdienaam ir samudzhinaata jau liidz nelabumam, bet taas veiksmiigaa masu izplatiiba ir sekmeejusi price/performance neapshaubaamu liidera statusa ieguushanu.




> kuraa valodinjaa tad tu straadaa asm,fortranaa,moska baisicaa vai varbuuut jaunaajaaas obj.orent. ...... nevienai lielajai firmai tie juusu pc un jaunaas obj.or. valodas ineintresee jo kapeec izmest naudu ja mainfreimi ir aatraaki , ietilpiigaaki,un drošāki????


 Puisiit, specializeejos C (un nevis C++), ASM un Windows API, kaa arii ljoti labi orienteejos un darbojos ar visdazhaadaakajaam datu struktuuraam. (lai gan Tu jau nejeedz kas tas ir) Kraaninjsh nenoshljuka?

Taadi kaa Fortran, Basic un citi tamliidziigie ir vispaar beernudaarzs. Objektorienteetaa pieeja JAUNA bija 90-ajos gados, tagad JAUNA skaitaas CASE riiki!  ::  Bet, ja buutu lasiijis ko ieprieksh esmu rakstiijis, tad buutu izlasiijis ka tieshi es esmu tas kursh 95% C# koderu uzskata par lameriem, taapat arii neatbalstu C++, jo no taa nav nekaadas praktiskas jeegas - taa ir tikai lieka vienkaarshu lietu sarezhgjiishana. Un tie, kuri nezin neko aarpus .NET vai Web tehnologjijaam, vispaar ir IT seetnieki.

----------


## tvdx

jau aac patikt bet kaapeec c??? un kaadu asm???? personaalo asm ir iistaakais beernudaarzs tik padsmit komandas(kaut arii ar taam var izdariit visu)

----------


## Vikings

Padsmit komandas. Gh gh gh.  ::

----------

